次のコード スニペットがあります。
if form.is_valid():
new_user = form.save()
return HttpResponseRedirect("/books/")
else:
print "invalid form"
現在、「無効なフォーム」を出力しています。フォームで実際に無効なものを特定するために、さらにデバッグを行うにはどうすればよいですか?
次のコード スニペットがあります。
if form.is_valid():
new_user = form.save()
return HttpResponseRedirect("/books/")
else:
print "invalid form"
現在、「無効なフォーム」を出力しています。フォームで実際に無効なものを特定するために、さらにデバッグを行うにはどうすればよいですか?
フォームのフィールドに関連するエラーの場合:
for field, error in form.errors.items():
print field, error
フォームには、フィールドに関連付けられていないエラーが含まれている場合もあります。
Form.clean() オーバーライドによって発生したエラーは、特にどのフィールドにも関連付けられないことに注意してください。これらは、必要に応じて non_field_errors() メソッドを介してアクセスできる特別な「フィールド」( allと呼ばれる) に入ります。フォームの特定のフィールドにエラーを添付する場合は、フォームの _errors 属性にアクセスする必要があります。これについては後述します。
あなたが使用することができます:
for error in form.non_field_errors():
print error
それらを印刷する