我使用django的後端解決方案。我只想從cookie或session_key獲取用戶名以瞭解用戶。我如何做到這一點?從Cookie獲取用戶名
from django.contrib.auth.models import User
from django.contrib.sessions.models import Session
def start(request, template_name="registration/my_account.html"):
user_id = request.session.get('session_key')
if user_id:
name = request.user.username
return render_to_response(template_name, locals())
else:
return render_to_response('account/noauth.html')
只有其他的東西出現了。我究竟做錯了什麼?
我是否正確,那麼驗證意味着他已登錄?
- >好的,我得到了!首先,如果您對某個問題有所澄清,請更新問題,不要發佈答案或(更糟糕的)其他問題,就像您所做的一樣。其次,如果用戶註銷,按定義他沒有用戶名。
我的意思是Cookies的優點是再次識別用戶。我只想把他的名字放在網頁上。即使他已註銷。或者不可能?
你應該不需要直接處理會話或Cookie的用戶名。 Django通過插入當前用戶來提供中間件來處理Web請求的無狀態(無論它們是匿名 - 未登錄 - 或Authenticated。)只要您安裝了正確的中間件,您就可以始終在那裏請求。用戶可以使用 –