Django:可选的模型表单字段

时间:2015-07-21 12:58:32

标签: python django forms python-2.7

我的应用程序中有一个模型表单,我希望我的两个模型表单字段是可选的,即用户可以将这两个表单字段留空,并且Django表单验证不应该引发错误相同。

我为这两个字段设置了blank = Truenull = True,如下所示:

questions = models.CharField(blank=True, null = True, max_length=1280)
about_yourself = models.CharField(blank=True, null = True, max_length=1280)

forms.py

questions = forms.CharField(help_text="Do you have any questions?", widget=forms.Textarea)
about_yourself = forms.CharField(help_text="Tell us about yourself", widget=forms.Textarea)

但是,如果在提交时将这两个字段留空,则会引发This field is required

这里看起来有什么问题?如何在Django中设置可选的模型表单字段?

3 个答案:

答案 0 :(得分:2)

试试这个:

$this->db->insert

答案 1 :(得分:1)

我认为这是因为您重新定义了表单中的字段,因此,例如,如果您的模型名称是MyModel,那么您只需定义一个ModelForm

MyModelForm(forms.ModelForm):
    class Meta:
        model = MyModel

它会起作用,但是既然你定义了字段,它就会使用django fields.Field的默认值,这是必需的= True

您只需将required = True添加到字段定义

即可

答案 2 :(得分:0)

我认为您需要为表单添加 given CmdFunctor: cats.Functor[LDPCmd] with def map[A, B](fa: LDPCmd[A])(f: A => B): LDPCmd[B] = fa match case g: Get => ??? 参数。

像这样:

required=False