Почему моя форма Django постоянно говорит "это поле обязательно для заполнения"

Я новичок в Django. Моя страница регистрации делает мою форму недействительной и продолжает печатать одну и ту же ошибку, даже если оба поля пароля заполнены и они одинаковы. Я приложил только те коды, которые относятся к полям пароля

Ошибка: <ul class="errorlist"><li>password1<ul class="errorlist"><li>This field is required.</li></ul></li><li>password2<ul class="errorlist"><li>This field is required.</li></ul></li><li>__all__<ul class="errorlist nonfield"><li>Passwords do not match.</li></ul></li></ul>

forms.py:

class RegisterForm(UserCreationForm):

    password1 = forms.CharField(
        required=True,
        widget=forms.PasswordInput(attrs={
            'class': 'form-control',
            'name': 'password1',
            'id': 'floatingPassword',
            'placeholder':'Password',
        }),
    )

    password2 = forms.CharField(
        required=True,
        widget=forms.PasswordInput(attrs={
            'class': 'form-control',
            'name': 'password2',
            'id': 'floatingConfirmPassword',
            'placeholder':'Confirm password',
        }),
    )

    class Meta:
        model = User
        fields = [
            'password1',
            'password2',
            ]

    # Compare password
    def clean(self):
        self.cleaned_data = super().clean()

        password1 = self.cleaned_data.get('password1')
        password2 = self.cleaned_data.get('password2')

        if password != password2:
            raise forms.ValidationError("Passwords do not match.")
        return self.cleaned_data

views.py (В прототипе)

def register(request):
    # Create a new form
    if request.method == 'GET':
        form = RegisterForm()
        return render(request, 'users/register.html', {'form': form})

    # When the user submits the form
    elif request.method == 'POST':
        form = RegisterForm(request.POST)
        # Check if the form is valid
        if form.is_valid():
            print('FORM is valid!')
            print(form.cleaned_data)
            form.save()
            #user = form.cleaned_data.get('username')
            #messages.success(request, f"Account has been created for {user}")
            # UPDATE THE URL LINK IN THE FUTURE
            return redirect('/login')

        else:
            print('Form is not valid')
            print(form.errors)
            #messages.error(request, 'Error processing your request')
            return render(request, 'users/register.html', {'form': form})

register.html:

Вернуться на верх