Почему мой код Django не проходит в Else Part?

Вот мой views.py, где я написал код входа пользователя, и проблема, с которой я сталкиваюсь, заключается в том, что код работает правильно для аутентификации пользователя, но когда пользователь вводит неправильные учетные данные, я хочу, чтобы пользователь перешел на страницу регистрации, но я не могу перевести его на страницу регистрации. Пожалуйста, помогите мне разобраться с этим и сообщите мне, где я совершаю ошибку

def user_login(request):
    if request.method == "POST":
        fm = AuthenticationForm(request=request,data=request.POST)
        if fm.is_valid():
            uname = fm.cleaned_data['username']
            pword = fm.cleaned_data['password']
            user = authenticate(username=uname,password=pword)
            if user is not None:
                login(request,user)
                return HttpResponseRedirect('/profile/')
            else:
                return HttpResponseRedirect('/register/')
    else:
        fm = AuthenticationForm(request)
    return render(request,'login.html',{'form':fm})

Вот мои urls.py

from . import views
urlpatterns = [
    path('',views.index),
    path('register/',views.user_register,name='user_register'),
    path('login/',views.user_login,name='user_login'),
    path('profile/',views.user_profile,name='user_profile'),

]

Вы не обработали ситуацию, когда форма недействительна (нет оператора else для if fm.is_valid():). Попробуйте использовать следующее:

def user_login(request):
    if request.method == "POST":
        fm = AuthenticationForm(request=request,data=request.POST)
        if fm.is_valid():
            uname = fm.cleaned_data['username']
            pword = fm.cleaned_data['password']
            user = authenticate(username=uname,password=pword)
            if user is not None:
                login(request,user)
                return HttpResponseRedirect('/profile/')
        return HttpResponseRedirect('/register/')
    else:
        fm = AuthenticationForm(request)
    return render(request,'login.html',{'form':fm})
Вернуться на верх