(у меня все еще есть такая же проблема, но ответ на мой последний вопрос дал мне новый вопрос.) Я сделал веб -сайт с HTML и CSS, который я теперь хочу перейти в шаблоны Pelican/Jinja. Я хочу, чтобы NAVBAR автоматически изменился, когда страница генерирована/обновлена, чтобы ссылка на текущий раздел - это другой цвет. Например, на странице Masthead, которая находится под «о», я хочу, чтобы вкладка «О» в Navbar была другой. Раньше я выполнял это, добавив класс CSS в конкретный Div. Теперь я хотел бы сделать это более эффективно, используя шаблоны джинджи/макросы. Вот как я попал сюда.{% block nav %}
{% set btnH = 'Home'%}
{% set btnA = 'About'%}
{% macro set_curr (section) %}
{% if section == 'Home' %}
{% set btnH = 'Home'%}
{% elif section == 'About' %}
{% set btnA = 'About'%}
{% else %}
{% endif %}
{% endmacro %}
{{ set_curr("{{ section }}") }}
{{ btnH }}
{{ btnA }}
{% endblock nav %}
< /code>
, а затем шаблон index.html это: < /p>
{% extends "base.html" %}
{% block title %}Homepage{% endblock title %}
{% block section %}{% set section = 'Home' %}{% endblock section %}
{% block content %}
Lorem ipsum
{% endblock content%}
< /code>
Но когда я его запускаю, Navbar просто отображается как < /p>
Home
About
< /code>
Без измененных классов и без добавленных divs. (Хотя остальная часть шаблона, кажется, работает нормально.) Почему это не работает? Что я недопонимаю в макросах и/или переменных джинджи?
Подробнее здесь: https://stackoverflow.com/questions/797 ... -div-class