我试图自定义当用户输入的文本长于模型中CharField的最大长度时显示的错误消息 . 该模型定义该字段如下:
name = models.CharField(max_length=200)
我有一个这个模型的ModelForm,它定义了表单字段,如下所示:
name = forms.CharField(widget=forms.TextInput(attrs={'class':"span8", 'placeholder':'e.g. How do I setup a wi-fi network? How to sync my iPhone with iCloud?'}),
error_messages={'required': 'Please enter a question.', 'max_length': 'Your question is too long.'})
这适用于“必需”错误消息,但“max_length”错误消息仍然在此处使用Django的默认消息 . 我做错了什么还是应该以其他方式定制这个文本?
3 回答
'max_length'
由'django.core.validators.MaxLengthValidator'
检查,其中包含硬编码的错误消息 . 您可以通过以下方式将其替换为您自己的版本:我不确定它的工作版本,但现在你可以这样做:
你可以创建
'django.core.validators.MaxLengthValidator'
的子类