在Django的ModelForm中更改必填字段文本
在文档中提到,你可以使用 Field.error_messages()
这个函数来修改当某个字段验证失败时显示的文本。不过,我找不到在 modelForm
中这样做的方法。我尝试直接这样做:
Field.error_messages={'required': "test"}
但这样不行,直接在字段上使用这个函数会报错,提示字段没有定义,尽管它在字段变量中是这样定义的:
fields = ['fieldname']
那么,如何在模型表单中更改这个文本呢?任何帮助都非常感谢。
1 个回答
2
对于简单的情况,你可以在你的 ModelForm
类中指定 自定义错误信息。
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'}
...