I'm implementing a bootstrap navbar
as show in this example here
Items in a navbar are <li>'s
, the "selected" item has the attribute class="active"
:
<li class="active"> <a href="#"> Link1 </a> </li>
<li> <a href="#"> Link2 </a> </li>
In Django these items will be within a template, which gets included by any templates that are supposed to display the navbar. I'm thinking about doing it this way:
<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>
I would like to know if there is a built-in way to get the template_name
(that is, the template being rendered, as passed to render_to_response()
, in views.py
)
Sure, I could explicitly add a template_name
variable to render_to_response()
, which would solve the problem. But thinking about DRY I feel this shouldn't be needed.