我想在所有视图中包含相同的变量,为了避免重复,我一直在查看django文档并找到了通用的显示视图,我尝试了它但它似乎没有用。 知道怎么做吗?
答案 0 :(得分:3)
写一个template context processor:
def add_foo(request):
return {'var': 'foo'}
将其保存到文件中,例如custom_context.py
,将其放在与views.py
相同的目录中。
然后,将其添加到TEMPLATE_CONTEXT_PROCESSORS
setting - 确保保留默认值,否则其他功能可能无效。您需要添加Python路径,因此请添加yourapp.custom_context.add_foo,
现在,每当您返回RequestContext
实例时(您可以使用render
shortcut执行此操作,并且所有基于类的视图都会自动返回RequestContext
实例);变量var
将在您的模板中提供,{{ var }}
。