其中a是django表单中的标准错误消息?
我如何在自定义验证中使用它们?
我的意思是“需要这个字段”这样的错误
由于
编辑:
目前我这样做:
def clean(self):
cleaned_data = super(QuoteForm, self).clean()
country = cleaned_data['country']
for key in COUNTRY_FIELDS[country]:
if cleaned_data[key] == '':
self._errors[key] = self.error_class(_('This field is required'))
return cleaned_data
FIXED: 我补充说:
self._errors[key] = self.error_class( [forms.Field.default_error_messages['required']])
答案 0 :(得分:4)
django.forms.fields.Field
及其子类具有default_error_messages
类属性。
这是一个包含required
和invalid
等密码的dict,错误消息为值。
django.forms.fields.Field.default_error_messages
有required
IntegerField
,FloatField
,DateField
,TimeField
各有invalid
。
DecimalField
有max_digits
,max_decimal_places
和max_whole_digits
等
Browse the source。在页面中搜索default_error_messages
。
如果你是Field
的子类,你可以,例如,
raise ValidationError(self.error_messages['invalid'])
在字段中,error_messages
包含字段类的default_error_messages
及其祖先以及在字段初始化期间传递的任何其他error_messages
。
如果您想在字段外重复使用required
消息,可以
from django.forms import fields
raise ValidationError(fields.Field.default_error_messages['required'])
您想要重复使用哪些消息?