Estoy intentando crear un formulario en Django. Eso funciona y todo, pero quiero que todos los errores estén en la parte superior del formulario, no al lado de cada campo que tenga el error. Probé bucle sobre form.errors, pero sólo mostró el nombre del campo que se detectó un error, no un mensaje de error como "El nombre es necesario."Obtener una lista de errores en una forma Django
Esto es más o menos lo que me gustaría ser capaz de utilizar en la parte superior de la forma:
{% if form.??? %}
<ul class="errorlist">
{% for error in form.??? %}
<li>{{ error }}</li>
{% endfor %}
</ul>
{% endif %}
¿Qué iba a utilizar para ???
allí? No es errors
; que solo muestra los nombres de los campos.
Al hacer esto, muestra una lista con cuatro elementos, cada uno con un carácter: "s", "a", "a" y "m". El formulario específico que estoy usando es el formulario de registro en django-registration. – icktoofay
Después de depurar esto un poco, "s", "a", "a" y "m" son la segunda letra del nombre de los campos. Eso es algo extraño, pero marcaré tu respuesta como la respuesta, ya que creo que podré resolverlo desde aquí. – icktoofay
Probablemente solo necesite llamar .items() en el diccionario, que devuelve una secuencia de tuplas de (clave, valor) que se descomprimirán en su (campo, errores). –