我是 DJango 的新手,我正在尝试进行用户身份验证。我的登录工作正常,但我的用户没有注销。我的注销视图是:from django.contrib.auth import logoutfrom django.contrib.auth.models import Userclass LogoutView(generic.View): @staticmethod def get(request): if User.is_authenticated: # Debug statement print('if') logout(request) return redirect('login') else: return redirect('index')我的 url 工作正常,因为当我去/logout/时,我的调试语句执行但if User.is_authenticated:总是返回一个对象(真)。我该如何解决这个问题。谢谢
1 回答
翻阅古今
TA贡献1780条经验 获得超5个赞
User.is_authenticated 不是你应该做的。用户是类,显示它将具有在您的请求中显示的对象,这些对象已经存在,并且与正在服务的用户无关。而,request
是用户携带许多东西的对象,其中之一是user
。
它应该是:
request.user.is_authenticated:
添加回答
举报
0/150
提交
取消