2010-12-05 5 views
0
def clean_title(self): 
     title = self.cleaned_data['title'] 
     if len(title) < 5: 
      raise forms.ValidationError("Please write more in Title.") 
     return title 

私のmodels.pyでは、これは通常、自分のタイトルにエラーフォームを設定する方法です。Djangoでは、フォームエラーをviews.pyにどのように入れますか?

しかし、私はそれをviews.pyで行いたいのですが?私は自分のコードのロジックを除いて、そのようなエラーを設定したい。

答えて

1

フォームエラーは、フィールド名をErrorListクラスにマップするディクショナリ(ErrorDict from django.forms.util)に格納されます。 _clean_fields方法を見て - あなたはその後、cleaned_data属性から適切なフィールドを削除し、このような何かを、あなたのフォームclean()メソッドを呼び出す必要があります:

your_form._errors[ "your_field" ] = ErrorList([ "Your error message" ]) 
関連する問題