gpt4 book ai didi

python - Django 应用引擎 : AttributeError: 'AnonymousUser' object has no attribute 'backend'

转载 作者:太空狗 更新时间:2023-10-29 21:55:38 24 4
gpt4 key购买 nike

我正在使用 djangoappengine。当我尝试创建新用户、对该用户进行身份验证并让他们登录时,出现以下错误 AttributeError: 'AnonymousUser' object has no attribute 'backend'

我的代码很简单,看起来像:

user = User.objects.create_user(username, username, password)
user.set_password(password)
user.save()

user = django.contrib.auth.authenticate(username=username, password=password)
django.contrib.auth.login(request, user)

我只在生产中遇到以下错误,而且只是偶尔出现:

web req_create: 'AnonymousUser' object has no attribute 'backend'
Traceback (most recent call last):
File "/base/data/home/apps/s~XXXXX/1.356802202883392818/XXXX/XXX.py", line 332, in req_create
login(request, user)
File "/base/data/home/apps/s~XXXXX/1.356802202883392818/django/contrib/auth/__init__.py", line 82, in login
request.session[BACKEND_SESSION_KEY] = user.backend
AttributeError: 'AnonymousUser' object has no attribute 'backend'

我不确定,但我有一种不好的预感,这个异常是由于高复制数据存储及其最终一致性造成的。我认为 authenticate() 保存了用户值,而 login() 进行了查询,但用户值尚未传播到 HRDS。谁能证实这是真的?如果是这样,将如何修复?

最佳答案

当您保存用户时,它不会自动激活。请检查 AnonymousUser 的链接这说明您的用户如何成为 AnonymousUser

因此您必须设置所有可能使您的用户成为AnonymousUser 的项目。在进行身份验证之前,请检查 user.is_anonymous()

关于python - Django 应用引擎 : AttributeError: 'AnonymousUser' object has no attribute 'backend' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9289391/

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