【发布时间】:2021-04-21 15:59:26
【问题描述】:
当我尝试从我的 UserAuth 应用程序重定向到 UserArea 应用程序时,我收到了上述错误。 它说'NoReverseMatch at /index/'。
UserAuth/views.py
def loginUser(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:
login(request, user)
# return render(request, 'home.html')
return redirect('nsUserArea:urlUserHome')
else:
messages.info(request, 'User name or password is incorrect')
return render(request, "Login.html")
USerAuth/urls.py
urlpatterns = [
path('', views.loginUser, name="urllogin"),
path('logout/', views.logoutUser, name="urllogout"),
path('register/', views.register, name="urlregister"),
path('home/', views.home, name="urlhome"),
]
UserArea/urls.py
urlpatterns = [
path('', views.IndexPage, name="urlUserHome"),
]
我的主要项目 urls.py 文件是这样的:
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('UserAuth.urls', namespace="nsUserAuth")),
path('index/', include('UserArea.urls', namespace="nsUserArea")),
]
UserArea/views.py
def IndexPage(request):
return redirect(request, 'home.html')
home.html
<h1>Home</h1>
【问题讨论】:
-
显示视图
IndexPage和它的模板。 -
@AbdulAzizBarkat 已更新
-
return redirect(request, 'home.html')你的意思是改写return render(request, 'home.html')吗?redirect用于将用户重定向到其他地方,render用于呈现模板。
标签: python django redirect url-pattern