我的网址有问题。我的站点在localhost中的路径是:
当我想登录时,我会点击按钮,路径如下所示:
当我提交表单时,路径如下所示:
问题是当我键入错误的密码或用户名时,django会将表单返回到同一url,因此:
当我再次键入正确的用户名和密码时,url如下所示:
我将向您显示我的URL:
urlpatterns = [
path('detska-kniznica', include('homepage.urls')),
path('detska-kniznica/admin', admin.site.urls),
path('detska-kniznica/games', include('games.urls')),
path('detska-kniznica/register', include('register.urls')),
path('detska-kniznica/login', include('login.urls')),
]
以及
urlpatterns = [
path('', views.index),
path('/logUser', views.log_user),
path('/logOut', views.log_out_user),
]
我的HTML提交按钮执行以下操作:
<form action="login/logUser" method="post" novalidate>
还有我的视图.py看起来像这样:
elif request.method == 'POST' and 'btn_login' in request.POST:
form = inputForms.LogUser(request.POST)
if form.is_valid():
print(form.errors)
user_name = form.cleaned_data['username']
user_password = form.cleaned_data['password']
user = authenticate(username=user_name, password=user_password)
if user is not None:
print("som tu")
request.session.set_expiry(86400) # sets the exp. value of the session
login(request, user) # the user is now logged in
else:
print("help")
print(form.errors)
return render(request, "login.html", {'LogUser': form})
return HttpResponseRedirect('/detska-kniznica')
else:
print(form.errors)
return render(request, "login.html", {'LogUser': form})
else:
print("Error: bad request in login.")
return HttpResponseRedirect('/detska-kniznica')
有什么想法吗?非常感谢。你知道吗
问题出在这段HTML中:
应该是:
如果您没有前导的
/
,您的浏览器将假定URL是相对的。你知道吗相关问题 更多 >
编程相关推荐