Своя проверка всей формы в Django
Метод clean проверяет форму
целиком - когда правило касается
нескольких полей сразу. Он работает
после clean_<field>.
Давайте проверим, что пароль и подтверждение совпадают:
from django import forms
from django.core.exceptions import ValidationError
class RegisterForm(forms.Form):
password = forms.CharField()
password2 = forms.CharField()
def clean(self):
cleaned_data = super().clean()
password = cleaned_data.get('password')
password2 = cleaned_data.get('password2')
if password and password2 and password != password2:
raise ValidationError('passwords do not match')
return cleaned_data
Сделайте форму с полями
salary и bonus.
Запретите ситуацию, когда бонус
больше зарплаты.
Сделайте форму с start_date
и end_date. Дата конца
не должна быть раньше начала.