¿Cómo puedo mostrar la Django ‘__todos__’ errores de forma en la plantilla?

Tengo el siguiente código de formulario:

# forms.py
class SomeForm(forms.Form):
    hello = forms.CharField(max_length=40)
    world = forms.CharField(max_length=40)

    def clean(self):
        raise forms.ValidationError('Something went wrong')

# views.py
def some_view(request):
    if request.method == 'POST':
        form = SomeForm(request.POST)
        if form.is_valid():
            pass
    else:
        form = SomeForm()

    data = {
        'form': form
    }
    return render_to_response(
        'someform.html',
        data,
        context_instance=RequestContext(request)
    )

# someform.html
{{ form.hello }}
{{ form.hello.errors }}

{{ form.world }}
{{ form.world.errors }}

¿Cómo puedo mostrar los errores de la clave __all__ en el nivel de la plantilla sin tener que extraer a la vista por separado? Quiero evitar las siguientes:

    if form.errors.has_key('__all__'):
        print form.errors['__all__']
InformationsquelleAutor Thierry Lam | 2010-03-26

2 Kommentare

  1. 28

    {{ form.non_field_errors }} para los errores relativos a la forma de campo

    {{ form.password.errors }} por los errores relacionados con el campo de texto como passoword en este caso

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea