Почему ошибка валдации формы django не работает в моей форме

Я хочу показать ошибку валидации пользователя, но похоже, что это не работает в моей форме входа вот код my forms.py

class LoginForm(forms.Form):
    username = forms.CharField(widget=forms.TextInput())
    password = forms.CharField(widget=forms.PasswordInput())
    remember_me = forms.BooleanField(required=False, label='Remember Me',help_text='Keep me logged in.',widget=forms.CheckboxInput())

    def clean(self, *args, **kwargs):
        username = self.cleaned_data.get("username")
        password = self.cleaned_data.get("password")
        if username and password:
            user = authenticate(username=username, password=password)
            if not user:
                raise forms.ValidationError("This user doesn't exist")
            if not user.check_password(password):
                raise forms.ValidationError("Incorrect Password")
            if not user.is_active:
                raise forms.ValidationError("User no longer Active")
        return super(LoginForm,self).clean(*args,**kwargs)

мой views.py для входа

def my_login(request):
    if 'next' in request.GET:
        messages.add_message(request, messages.WARNING, 'To Continue, Please login here!')
    if request.method == 'POST':
        form = LoginForm(request.POST)
        if form.is_valid():
            username = form.cleaned_data["username"]
            password = form.cleaned_data["password"]
            remember_me = form.cleaned_data['remember_me']
            user = authenticate(username=username, password=password)
            if user:
                login(request, user)
                if not remember_me:
                    request.session.set_expiry(0)
                    return redirect('accounts:home')
                else:
                    request.session.set_expiry(1209600)
                    return redirect('accounts:home')
        else:
            messages.info(request, 'Please check your credentials.')
            return redirect('accounts:login')
    else:
        form = LoginForm()
        return render(request, "login.html", {'form': form})

я знаю, что я перенаправляю форму, если учетные данные формы неверны, но если я этого не сделаю, то выскочит ошибка не вернул httpresponse он вернул none вместо этого также хочу узнать, какой лучший способ перенаправить или показать точную ошибку валидации того, какие учетные данные неверны

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