我在Django遇到了一些麻烦...
登录后,我正在丢失某些页面的auth会话。 如果我访问“accounts / login /”,“accounts / logout /”,“”accounts / register /“会话总是在那里,但如果我访问不同的页面,我就无法访问用户变量。
这很奇怪,因为我对所有页面都使用相同的“base.html”,而且里面有逻辑“if user.is_authenticated”,当我访问有“帐户”的页面时,我怎么说这个条件是正确的URL。
在设置文件中我启用了三个中间件:
MIDDLEWARE_CLASSES =( 'django.middleware.common.CommonMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', )
由于
答案 0 :(得分:4)
这里只是猜测:您是否在您无法访问用户的视图中包含RequestContext?
换句话说,如果你调用泛型视图,会自动包含RequestContext,但如果你使用的是render_to_response()
,那么你需要像这样调用它:
return render_to_response('template_name',
{ your context dict },
context_instance=RequestContext(request))