在django中更改modelform上的必填字段文本

时间:2014-03-12 20:32:48

标签: python django django-forms

在文档中,它表示如果字段未验证,则使用Field.error_messages()函数更改显示的文本。但是,我找不到为modelForm做到这一点的方法。我试过这样做:

Field.error_messages={'required': "test"} 

但是这不起作用,并且直接在字段上使用它只会给出一个关于字段的错误消息,因为某些原因没有定义该字段,即使它在fields变量中定义为

fields = ['fieldname']

如何在模型表单上更改此文本?任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:1)

对于简单案例,您可以在ModelForm班级中指定custom error messages

class UserForm(forms.ModelForm):
    first_name = forms.CharField(error_messages={'required': 'test'})

    class Meta:
        model = User
        fields = ('first_name', 'last_name',...)

您也可以覆盖班级的__init__

class UserForm(forms.ModelForm):
    class Meta:
        model = User

    def __init__(self, *args, **kwargs):
        super(UserForm, self).__init__(*args, **kwargs)

        self.fields['first_name'].error_messages = {'required': 'test'}
        ...