我试图找出何时/何时确切request.user成为AnonymousUser。我一直在搜索整个Auth后端,但我似乎无法找到它。我看错了地方?在Django中,用户成为AnonymousUser的地方在哪里?
我知道,每个不是Authenticated用户的用户都会成为AnonymousUser,但我需要知道这种情况在何处发生。
任何帮助,将不胜感激。
我试图找出何时/何时确切request.user成为AnonymousUser。我一直在搜索整个Auth后端,但我似乎无法找到它。我看错了地方?在Django中,用户成为AnonymousUser的地方在哪里?
我知道,每个不是Authenticated用户的用户都会成为AnonymousUser,但我需要知道这种情况在何处发生。
任何帮助,将不胜感激。
contrib\auth\__init__.py:80
def get_user(request):
from django.contrib.auth.models import AnonymousUser
try:
user_id = request.session[SESSION_KEY]
backend_path = request.session[BACKEND_SESSION_KEY]
backend = load_backend(backend_path)
user = backend.get_user(user_id) or AnonymousUser()
except KeyError:
user = AnonymousUser()
return user
这一切都在django.contrib.auth.middleware
模块 - 看这里:https://github.com/django/django/blob/master/django/contrib/auth/middleware.py#L49了解详情。
尝试加入假的构造函数AnonymouUser看到回溯说什么断言。 –