gpt4 book ai didi

Django - 身份验证 - 重定向

转载 作者:行者123 更新时间:2023-12-03 21:46:10 25 4
gpt4 key购买 nike

我正在使用 Django 标准身份验证。/login 在我的/urls.py 中有以下位置。

(r'^$', 'django.contrib.auth.views.login', {'template_name': 'home.html', }),

如果用户调用 www.myapp.com 并且登录重定向到 settings.py 中定义的 LOGIN_REDIRECT_URL = '/pm/po/my/' (www.myapp.com/pm/po/my/),则登录工作正常。

如果用户关闭浏览器选项卡,则不会终止 session (= 用户未注销),而让浏览器保持打开状态。这也很好。

但是,如果用户然后打开一个新选项卡并转到 www.myapp.com,登录 View 将再次显示,而用户已经登录。在这里我希望用户已重定向到 www.myapp.com/pm/po/我的/。

我怎样才能做到这一点?

我尝试添加以下行:
(r'^$', 'myapp.project_management.views.projects'),
(r'^$', 'django.contrib.auth.views.login', {'template_name': 'home.html', }),

但是,这会导致以下错误消息:“此网页具有重定向循环”

- 解决方案 -

网址.py:
(r'^$', 'myapp.project_management.views.my_projects'),
(r'^login/$', 'django.contrib.auth.views.login', {'template_name': 'home.html', }),

设置.py
LOGIN_URL = '/login'

最佳答案

不要让主页 URL 指向登录页面。相反,使用 login_required decorator根据需要将未登录的用户重定向到登录页面。

关于Django - 身份验证 - 重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10244331/

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