フォームのフィールド エラーを 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
多分これはあなたを助けるでしょう。一般的には、クリーンをオーバーライドし、関数内で次のことを行うことができます
フォーム固有のエラーを発生させたい場合は、.
self._errors["field"] = ErrorList([u"Error"])
これは、エラークラスを確実に取得することです
フィールド以外のエラーがある場合は、次のような検証エラーを簡単に発生させることができます
raise forms.ValidationError(_("Error"))
お役に立てれば。
raise ValidationError(message)
.clean_<fieldname>()
メソッドに移動clean_address
します。 ValidationError
このようなメソッドで発生したエラー メッセージは、特定のフィールドに添付されます。から提起されたclean()
ものは、一般的にモデルに起因します。