Колба: текущая страница в переменной запроса
в шаблоне, как мне получить то, что страница я в настоящее время на? Я бы предпочел не передавать переменную, как page
, особенно, когда я знаю, что некоторые request.xxx
может предоставить мне информацию.
<li {% if page=="home" %}class="active"{% endif %}>
<a href="/">Home</a>
</li>
<li {% if page=="about" %}class="active"{% endif %}>
<a href="/about">About</a>
</li>
5 ответов:
первый запрос на импорт из колбы в вашем приложении. Тогда вы можете использовать его, не переходя к шаблону:
<li {%- if request.path == "/home" %} class="active"{% endif %}> <a href="/">Home</a> </li> <li {%- if request.path=="/about" %} class="active"{% endif %}> <a href="/about">About</a> </li>
С помощью запроса.путь не кажется правильным подходом, так как вам придется обновить пути в случае изменения правил URL или развертывания вашего сайта в подпапке.
запрос использовать.url_rule.конечная точка вместо этого содержит фактическое имя конечной точки, независимое от фактического пути:
(Pdb) request.url_rule.endpoint 'myblueprint.client_pipeline'
в шаблоне:
<li {% if request.url_rule.endpoint == "myblueprint.client_pipeline" %}class="active"{% endif %}>Home</li>
удачи!