我是 DJango 的新手,我正在嘗試進(jìn)行用戶身份驗(yàn)證。我的登錄工作正常,但我的用戶沒有注銷。我的注銷視圖是: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 工作正常,因?yàn)楫?dāng)我去/logout/時(shí),我的調(diào)試語句執(zhí)行但if User.is_authenticated:總是返回一個(gè)對(duì)象(真)。我該如何解決這個(gè)問題。謝謝
1 回答

翻閱古今
TA貢獻(xiàn)1780條經(jīng)驗(yàn) 獲得超5個(gè)贊
User.is_authenticated 不是你應(yīng)該做的。用戶是類,顯示它將具有在您的請(qǐng)求中顯示的對(duì)象,這些對(duì)象已經(jīng)存在,并且與正在服務(wù)的用戶無關(guān)。而,request
是用戶攜帶許多東西的對(duì)象,其中之一是user
。
它應(yīng)該是:
request.user.is_authenticated:
添加回答
舉報(bào)
0/150
提交
取消