{% load trans from i18n %}
{% if form.errors and form.non_field_errors %}
{% for error in form.non_field_errors %}
{% trans "Error" as default_header %}
{% firstof error.header default_header %}
{% if error.messages %}
{% comment %}
Some form errors are raised with multiple error messages, using the
`messages` attribute. This can either be a single message or multiple
messages.
{% endcomment %}
{% if error.messages|length == 1 %}
{{ error.messages|first }}
{% else %}
{% for message in error.messages %}
{{ message }}
{% endfor %}
{% endif %}
{% else %}
{% comment %}
Some older form errors don't use attached messages at all, in which
case we can treat these as a single message.
{% endcomment %}
{{ error }}
{% endif %}