Я хочу установить переменную err
для ошибок в полях формы (используя django 2.1.3 ):
{% for field in form %}
{% if field.errors %}
{% with field.errors as err %}{% endwith %}
{% endif %}
{% endfor %}
{% if err %}
<div class="alert alert-danger fade show">
<button type="button" class="close" data-dismiss="alert"
aria-label="Close">
<span aria-hidden="true">×</span>
</button>
{{ err }}
</div>
{% endif %}
Но при рендеринге в html значениепеременная не имеет выходных данных.Хотя есть ошибки, которые я поднял, используя forms.ValidationError
.
Также попробуйте это как ...
{% for field in form %}
{% if field.errors %}
<div ... >
...
...
{{ field.errors }}
</div>
{% endif %}
{% endfor %}
В этом случае вывод или ошибки показывают,но с несколькими <div>
элементами & n нет.
Я знаю, что это можно сделать другим способом в views.py
: используя 'django.contrib.messages' .Затем отправка ошибок в messages.error () , внутри form.is_valid()
, затем ...
{% if messages %}
{% for message in messages %}
{{ message }}
{% endfor %}
{% endif %}
Но я хочу манипулировать им из файла forms.py
.Итак, как мне это сделать?10
Заранее спасибо !!