私は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 に反映されていません。誰かがこれが真実であることを確認できますか? もしそうなら、それはどのように修正されますか?