使用required = False,仍然需要字段错误

时间:2014-02-07 11:34:33

标签: python django

我有一个表单类,它接受一个模型,表的元类如下, 问题是我想使patient_signature和worker_signature字段不需要,我尝试删除class wide required_css_class,但没有帮助,给每个属性类所需的True / False也没有帮助。

有任何建议......?

class Meta:
        model = Locator
        exclude = ('patient','worker', 'mode_of_transmission', 'secondary_telephone_number', 'locator', 'grant', 'thumbnail')
        creation_date=forms.DateField(initial=datetime.date.today,
                                      widget=SelectDateWidget(),
                                      label="Creation Date")
        patient_signature=forms.CharField(widget=ClientSignatureWidget())
        worker_signature=forms.CharField(widget=WorkerSignatureWidget())
        required_css_class = 'required'

2 个答案:

答案 0 :(得分:1)

假设您正在讨论ModelForm,则无法覆盖 Meta类中的字段。它必须在外面。

此外,如果模型中需要该字段但不在表单中,则必须提供默认值,如下所示:

class LocatorForm:
    patient_signature = forms.CharField(widget=forms.HiddenInput(), initial=" ")

    class Meta:
        ...

或者,不要在fields列表中提及该字段,并通过覆盖表单POST的提交来设置值。

答案 1 :(得分:0)

patient_signature=forms.CharField(widget=ClientSignatureWidget(), required=False)