djangoにフォームがあり、各フィールドの前にエラーを表示したいと思います。
問題は、form.field_name.errors
またはを使用するform.errors.field_name
と、エラーが表示されないフィールドの1つで発生し、そのうちの1つだけで、テンプレートコードは次のようになります。
<table class="">
<form action="" method="POST" enctype="multipart/form-data">
{% csrf_token %}
<div>
<div>{{ form.errors.competitor_name }}</div>
<br/>
<div>name:</div>
<div>{{ form.competitor_name }}</div>
</div>
<div>
<div>{{ form.errors.notional_code }}</div>
<br/>
<div>code:</div>
<div>{{ form.national_code }}</div>
</div>
<div>
<table id="filesContainer">
<tbody>
{% for form_ in formset.forms %}
<tr id="{{ form_.prefix }}-row">
<td>{{ form_.file.label }}:</td>
<td>{{ form_.file }}</td>
<td></td>
</tr>
{% endfor %}
</tbody>
</table>
<p>
{{ formset.management_form }}
</p>
</div>
<div class="arsh-signup-row">
<input type="submit" value="SignUp" />
</div>
</form>
</table>
フィールドのエラーを表示するのに問題がありnational_code
ます。
ブレークポイントを使用しましたが、エラーを正しい方法で追加していて、フォームに関するすべてが正常であることに完全に気付きました。テンプレートに問題があるようで、これが何であるかわかりません。
興味深いのは、このフィールドのエラーをページの他の部分に表示したい場合、それは問題ありません。すべて完了しましたが、このコードを使用すると、その特定の部分には表示されません。
<div>
<div>{{ form.errors.notional_code }}</div>
<br/>
<div>name:</div>
<div>{{ form.competitor_name }}</div>
</div>
<div>
<div>{{ form.errors.notional_code }}</div>
<br/>
<div>code:</div>
<div>{{ form.national_code }}</div>
</div>
欲しいものが見えます。最初は本当に面白いですが、今では混乱しています。
何かアドバイスをいただければ幸いです。