如文档中所述,经过身份验证的用户对象存储在模板中的用户变量中。我需要django在apps文件中存储用户变量的地方谢谢:
user = request.user
request['user'] = user #where is?
感谢您的帮助
答案 0 :(得分:1)
确保您使用RequestContext
。否则,user
在模板中不可用。
答案 1 :(得分:1)
它位于AuthenticationMiddleware
。
官方文件提到它:
link:
AuthenticationMiddleware将用户与使用的请求相关联 会话。
link:
class AuthenticationMiddleware
添加表示的用户属性 当前登录的用户,每个传入的HttpRequest对象。 请参阅Web请求中的身份验证。
源代码(django.contrib.auth.middleware.py):
class AuthenticationMiddleware(object):
def process_request(self, request):
assert hasattr(request, 'session'), "The Django authentication middleware requires session middleware to be installed. Edit your MIDDLEWARE_CLASSES setting to insert 'django.contrib.sessions.middleware.SessionMiddleware'."
request.user = SimpleLazyObject(lambda: get_user(request))
答案 2 :(得分:0)
阅读django documentation here的链接。 您将获得django身份验证的清晰图片