Django:从登录页面重定向登录的用户

我想设置我的网站,以便如果用户点击该/login页面并且他们已经登录,它将把他们重定向到主页。如果未登录,它将正常显示。由于登录代码内置在Django中,我该怎么做?

回答:

我假设你当前正在使用内置的登录视图,

(r'^accounts/login/$', 'django.contrib.auth.views.login'),

或你网址中的类似内容。

你可以编写包含默认视图的登录视图。它将检查用户是否已经登录,如果已经登录则重定向,否则使用默认视图。

就像是:

from django.contrib.auth.views import login

def custom_login(request):

if request.user.is_authenticated():

return HttpResponseRedirect(...)

else:

return login(request)

当然可以相应地更改你的网址:

(r'^accounts/login/$', custom_login),

以上是 Django:从登录页面重定向登录的用户 的全部内容, 来源链接: utcz.com/qa/422978.html

回到顶部