我正在尝试以 clean() 形式设置字段错误,我目前正在做:
self._errors['address'] = self._errors.get('address', ErrorList())
self._errors['address'].append(_(u'Please specify an address.'))
有没有更好的,如果可能的话更短的方法来做到这一点?
我正在尝试以 clean() 形式设置字段错误,我目前正在做:
self._errors['address'] = self._errors.get('address', ErrorList())
self._errors['address'].append(_(u'Please specify an address.'))
有没有更好的,如果可能的话更短的方法来做到这一点?
Django 1.7 中的新功能是Form.add_error( field, message )
.
https://docs.djangoproject.com/en/dev/ref/forms/api/#django.forms.Form.add_error
也许这会对你有所帮助。它通常首选您覆盖 clean 并且在函数内部您可以执行以下操作
如果你想提出特定的错误,你可以这样做。
self._errors["field"] = ErrorList([u"Error"])
这是确保你得到错误类
如果您有一个非字段错误,您可以像这样简单地引发一个验证错误
raise forms.ValidationError(_("Error"))
希望这可以帮助。
raise ValidationError(message)
.clean_<fieldname>()
方法。在这种方法中引发的错误消息将附加到特定字段。一般而言,从模型中提出的一个将归因于模型。clean_address
ValidationError
clean()