<div class="menu-top" style="width:715px;">
<ul class="nav nav-pills">
<li>
<a href="/link1"
{% if request.path == '/phylosophy' %}class="active"{% endif %}>
philosophy
</a>
</li>
<li><a href="/link2"><u>{% trans 'product' %}</u></a></li>
<li><a href="/link3"><u>{% trans 'contact' %}</u></a></li>
<li><a href="/link4"><u>{% trans 'news' %}</u></a></li>
</ul>
</div>
我需要将类.active添加到标记中。我做错了什么?
答案 0 :(得分:2)
通常Django会将CollectionViewSource.GetDefaultView
附加到网址,因此可能会更改为:
/
<强>附加强>
这种方法的一点是,如果你有一个更深的网址,如{% if request.path == '/phylosophy/' %}class="active"{% endif %}>
,你可能仍然希望保留/phylosophy/list/
类,所以我通常做的是创建一个名为{{的模板标签1}}:
active
然后使用它:
startswith
<强> PS:强>
如果打印时@register.filter('startswith')
def startswith(text, starts):
if isinstance(text, basestring):
return text.startswith(starts)
return False
为空,则可能需要将其添加到上下文处理器(<li{% if request.path|startswith:'/phylosophy/' %} class="active"{% endif %}>
),例如:
request.path