Django模板:如何基于URL过滤?

时间:2014-02-12 21:58:08

标签: python django templates

我在整个网站上使用了一个公共标题。在某些页面上,基于我们所处的URI,我想包含/排除一些HTML内容。这样做的正确方法是什么?我看到一个'url'标签,但显然不是它(事实上,在Django 1.5.5上似乎根本不起作用)。我希望有一个简单的过滤器,例如:

{% if url == '/dashboard/' %}
   <!-- conditional html content -->
{% endif %}

我知道我可以通过其上下文从View操作传递一些自定义数据,然后在模板中检查它,但感觉有点..过度/ iffy(?)

1 个答案:

答案 0 :(得分:1)

您可以在模板中使用request.path来获取当前网址:

{% if request.path == '/dashboard/' %}
   <!-- conditional html content -->
{% endif %}

为此,您必须在django.core.context_processors.request文件的TEMPLATE_CONTEXT_PROCESSORS中列出settings.py