【发布时间】:2014-10-11 16:52:13
【问题描述】:
我想在所有视图中包含相同的变量,以避免重复,我一直在查看 django 文档并找到了通用显示视图,我尝试了它,但它似乎不起作用。 知道怎么做吗?
【问题讨论】:
-
您可以使用模板上下文处理器。
标签: django django-views django-generic-views
我想在所有视图中包含相同的变量,以避免重复,我一直在查看 django 文档并找到了通用显示视图,我尝试了它,但它似乎不起作用。 知道怎么做吗?
【问题讨论】:
标签: django django-views django-generic-views
写一个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 }}。
【讨论】: