ExamHoot

Understanding Form.errors and Non-Field Errors

from django import forms
from django.core.exceptions import ValidationError

class LoginForm(forms.Form):
    username = forms.CharField()
    password = forms.CharField(widget=forms.PasswordInput)
    
    def clean(self):
        cleaned_data = super().clean()
        username = cleaned_data.get('username')
        password = cleaned_data.get('password')
        if username == 'admin' and password != 'secret123':
            raise ValidationError('Invalid credentials for admin user')
        return cleaned_data

form = LoginForm(data={'username': 'admin', 'password': 'wrong'})
form.is_valid()
print('__all__' in form.errors)
  1. False, because the error is stored under 'password' key

  2. True, because ValidationError raised in clean() creates a non-field error under '__all__'

  3. False, because form.errors only contains field-level errors

  4. True, because it's stored under 'username' key

Show answer & explanation

Correct answer

True, because ValidationError raised in clean() creates a non-field error under '__all__'

Explanation

Non-field errors raised in clean() are stored under the '__all__' key in form.errors. This allows you to display form-level errors separately from field-specific errors. The output is True.

Written by ExamHoot EditorialPublished · Updated

All 30 Django Forms and Validation questions

  1. 1.What is the primary purpose of Django Forms?
  2. 2.Which Django class is used to create a form?
  3. 3.What does the is_valid() method do in Django Forms?
  4. 4.Which field type in Django Forms is used for email validation?
  5. 5.What is the purpose of the clean() method in Django Forms?
  6. 6.How do you access form errors in Django?
  7. 7.What does ModelForm do in Django?
  8. 8.Which method is used to render form fields in a Django template?
  9. 9.What is the purpose of the required parameter in Django form fields?
  10. 10.Which validator ensures a field value is within a specific range?
  11. 11.Scenario:
  12. 12.What will be the output of the following Django form code?
  13. 13.Scenario:
  14. 14.What will be the output of the following code?
  15. 15.Scenario:
  16. 16.What will this code output?
  17. 17.Scenario:
  18. 18.What will be the output of the following ModelForm code?
  19. 19.Scenario:
  20. 20.What will this code output?
  21. 21.Understanding Django Form Validation Pipeline and Custom Validators
  22. 22.Django ModelForm Field Exclusion and Customization
  23. 23.Scenario:
  24. 24.Django Form Rendering with Widgets and HTML Attributes
  25. 25.Understanding Form.errors and Non-Field Errors
  26. 26.Django Form Inheritance and Method Resolution Order
  27. 27.Scenario:
  28. 28.Working with Form Bound and Unbound States
  29. 29.Custom Validators and Reusability Across Forms
  30. 30.Scenario: