导航栏中的项目是<li>'s,“选定”项目具有属性class="active":
<li class="active"> <a href="#"> Link1 </a> </li>
<li> <a href="#"> Link2 </a> </li>
在 Django 中,这些项目将位于一个模板中,该模板包含在任何应该显示导航栏的模板中。我正在考虑这样做:
<li> <a href="/" class="{% if template_name == "home.djhtml" %}active{% endif %}"> Home </a> </li>
<li> <a href="about/" class="{% if template_name == "about.djhtml" %}active{% endif %}"> About </a> </li>
<li> <a href="contact/" class="{% if template_name == "contact.djhtml" %}active{% endif %}"> Contact </a> </li>
我想知道是否有一种内置的方法来获取template_name(即正在渲染的模板,传递给render_to_response(), in views.py)
当然,我可以显式地向 中添加一个template_name变量render_to_response(),这将解决问题。但是考虑到 DRY,我觉得这不应该是必要的。