gpt4 book ai didi

python - 注销在 Django 中不起作用

转载 作者:行者123 更新时间:2023-11-28 21:07:52 27 4
gpt4 key购买 nike

我尝试从模板调用注销 url,然后重定向到主页。

配置文件.html:

<li><a data-hover="Logout" href="{% url 'signout' %}">Logout</a></li>

urls.py:

urlpatterns = [
url(r'^$', views.login, name='login'),
url(r'^ajax/validate_username/$', views.validate_username, name='validate_username'),
url(r'^signout$', views.signout, name='signout'),
]

views.py:

def signout(request):
if request.user.is_authenticated():
logout(request)
return HttpResponsePermanentRedirect('/')
else:
return HttpResponsePermanentRedirect('/')

有时在单击注销菜单时注销功能不起作用(注销功能正在调用)。

最佳答案

您可能应该使用 HttpResponseRedirect 而不是 HttpResponsePermanentRedirect。因为如果您打算始终运行 signout,永久重定向可能会使用您不需要的缓存。

你也可以这样退出:

from django.contrib.auth import views as auth_views

urlpatterns = [
...
url(r'^signout/$', auth_views.logout, {'next_page': 'home'}, name='signout'),
...
]

关于python - 注销在 Django 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40970261/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com