我想在main base.html中使用用户数据,这是我的主要模板。
我实际上使用登录通用视图。当我登录主页时,它会向我提供用户信息,但在所有其他页面中user
为空白。
我已经阅读了很多相关内容:request
,RequestContext
,我已将django.contrib.auth.context_processors.auth
添加到处理器列表中。
知道如何让这个变量显示在任何地方吗?
答案 0 :(得分:3)
两种方式:
如果您使用的是django 1.4+,则可以在从视图中返回时使用render():
def my_view(request):
...
return render(request, 'template.html', ctx)
如果您使用的是较旧的django或者您不喜欢渲染方法,则可以使用render_to_response返回RequestContext,如下所示:
def my_view(request):
...
return render_to_response('template.html', ctx, context_instance=RequestContext(request))
编辑:抱歉,忘了实际回答问题。如果您使用上述方法之一渲染模板并具有:
然后您可以使用:{{user}}和{{user.is_anonymous}}来确定发生了什么。