首页 > 解决方案 > 我遇到了一个错误,说“未找到“登录”的反向。'login' 不是有效的视图函数或模式名称。'

问题描述

这是我的 urls.py

path('login/', views.login, name="login"),
path('signOut/', views.signOut, name= "signOut"),

这些是我的观点,我用'home'替换了signOut函数中的'login',但我仍然有同样的错误。


def login (request):
    if request.method == 'POST':
        username = request.POST.get('username')
        password = request.POST.get('password')
        user = authenticate(request , username = username ,password = password)
        if user is not None:
            dj_login(request, user)
            return redirect ('home')    
    context= {}
    return render (request , 'freelancing_app/login.html' ,context )


def signOut (request):
    logout(request)
    return redirect('login')

标签: djangopython-3.xdjango-views

解决方案


解决方案是在我要将当前视图重定向到的所需视图之前添加应用程序名称,后跟冒号。就我而言;我的应用名称是“freelancing_app”,下面的代码显示了答案:

def signOut (request):
    logout(request)
    return redirect('freelancing_app:login')

推荐阅读