在某些情况下,我想注销用户,使用next
param将其重定向到登录页面,因此当用户成功登录时,Django应该将用户重定向到某个页面。
我找到了logout_then_login()
方法,但看起来它在登录页面参数后不支持。我试图在extra_content param中传递'next'param,但它不起作用。
我该怎么做?也许还有一些其他django方法可以做到这一点? 一般来说,我只想强制注销,让用户重新登录并将其重定向到logget out的页面。
答案 0 :(得分:1)
From the docs(向下滚动此方法)
logout_then_login(request [,login_url,current_app,extra_context])
将用户注销,然后重定向到登录页面。
网址名称:未提供默认网址
可选参数:
Here we can see that the login method will accept a next parameter as a get variable.
在login_url旁边添加应该做你想做的事:
from django.conf import settings
...
def myView(request):
login_url = "%s?next=%s" % (settings.LOGIN_URL, request.path)
logout_then_login(request, login_url=login_url)