0

is_valid() 関数がデータベース エラーをスローします。エイリアスデータベース(デフォルトのものではない)を使用しているため、フォームを検証できません。私のアプリケーション テーブルは database2 にあります。コード:

設定.py

DATABASES = {
      default:{
                 database1
       }
      'database2':{
                  database2
       }
}

models.py

class Application(models.Model)
            application_name = models.CharField(max_length=48,primary_key=True )
            application_version = models.DecimalField(max_digits=3,decimal_places=0,blank=False,null=False)  

フォーム.py

class Application_form(forms.ModelForm):
    def __init__(self,*args, **kwargs):

        super(Application_form,self).__init__(*args, **kwargs)

class Meta:
    model = Application  

ビュー.py

Application_Form=Application_form(request.POST)    
       if Application_Form.is_valid():
           print "true"
       else:
           print "false"
4

1 に答える 1

1
class Application_form(forms.ModelForm):
    def __init__(self,*args, **kwargs):

        super(Application_form,self).__init__(*args, **kwargs)
        self.queryset = Application.objects.using('database2')

    class Meta:
        model = Application  

ドキュメントへのリンク

于 2012-10-17T07:43:56.757 に答える