如何将 div class 分配给基于 django 模板中的 url 的元素?
How to assign a div class to an element based on url in django template?
我正在使用 Django
我目前正在这样做:
<a class="{% if request.path == '/messages/' %}current{% endif %}"
设置导航样式 link,或使其更粗,表明您当前在该页面上。
问题在于它仅在用户位于主收件箱时才有效,一旦他们点击查看邮件,该导航 link 的样式就会消失,因为它们不再打开/messages/,但在 /messages/4/ 上。
如何调整上面的代码,使 /messages/ 之后的任何内容都无关紧要?我可以添加一个星号吗,比如:
<a class="{% if request.path == '/messages/*/' %}
一个相当简单的方法是从视图中传递上下文数据而不是使用 request.path
。这是处理 li 项的类似示例。
<ul>
<li class="{% if active_tab == 'tab1' %} active{% endif %}"><a href="#">Tab 1</a></li>
<li class="{% if active_tab == 'tab2' %} active{% endif %}"><a href="#">Tab 2</a></li>
<li class="{% if active_tab == 'tab3' %} active{% endif %}"><a href="#">Tab 3</a></li>
</ul>
在您的示例中,在您的 "all messages" 和 "single messages" 视图中,您将传递上下文,以便模板知道在哪里应用您的 current
class。
我正在使用 Django 我目前正在这样做:
<a class="{% if request.path == '/messages/' %}current{% endif %}"
设置导航样式 link,或使其更粗,表明您当前在该页面上。
问题在于它仅在用户位于主收件箱时才有效,一旦他们点击查看邮件,该导航 link 的样式就会消失,因为它们不再打开/messages/,但在 /messages/4/ 上。
如何调整上面的代码,使 /messages/ 之后的任何内容都无关紧要?我可以添加一个星号吗,比如:
<a class="{% if request.path == '/messages/*/' %}
一个相当简单的方法是从视图中传递上下文数据而不是使用 request.path
。这是处理 li 项的类似示例。
<ul>
<li class="{% if active_tab == 'tab1' %} active{% endif %}"><a href="#">Tab 1</a></li>
<li class="{% if active_tab == 'tab2' %} active{% endif %}"><a href="#">Tab 2</a></li>
<li class="{% if active_tab == 'tab3' %} active{% endif %}"><a href="#">Tab 3</a></li>
</ul>
在您的示例中,在您的 "all messages" 和 "single messages" 视图中,您将传递上下文,以便模板知道在哪里应用您的 current
class。