gpt4 book ai didi

python - 在 Django Rest Framework 中使用 Tokenauthentication 进行身份验证时,last_login 字段未更新

转载 作者:太空狗 更新时间:2023-10-29 17:16:08 29 4
gpt4 key购买 nike

我在一个依赖 Django 用户模型和 DjangoRestFramework 下的 TokenAuthentication 的项目中工作

我被要求获取每个用户的上次登录日期时间,我意识到当我调用身份验证 REST 端点时该字段没有更新。

这是众所周知的事实吗?我是否遗漏了一些我必须做的事情,以便在每次调用 token 身份验证时更新该字段?

谢谢

最佳答案

嗯,最后我继承了REST Framework TokenAuthentication,在urls文件中指向它

url(r'^api-token-auth/', back_views.TokenAuthenticationView.as_view()),

View 处理请求并像这样手动调用 update_last_login:

from django.contrib.auth.models import update_last_login

class TokenAuthenticationView(ObtainAuthToken):
"""Implementation of ObtainAuthToken with last_login update"""

def post(self, request):
result = super(TokenAuthenticationView, self).post(request)
try:
request_user, data = requests.get_parameters(request)
user = requests.get_user_by_username(data['username'])
update_last_login(None, user)
except Exception as exc:
return None
return result

关于python - 在 Django Rest Framework 中使用 Tokenauthentication 进行身份验证时,last_login 字段未更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28613102/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com