Python Django templates sting comprasion每次返回True

Python Django templates sting comprasion每次返回True,python,html,django,python-3.x,django-templates,Python,Html,Django,Python 3.x,Django Templates,如果我转到“索引”或“公告”页面,我将分别向模板发送带有“索引”或“公告”页面名称的嵌入文本。它应该将活动类设置为导航栏中的当前链接 这是我在index.html模板中的代码 {% if embed_text.page_name == 'index' %} {% block movies_active %}active{% endblock %} {% endif %} {% if embed_text.page_name == 'announcements' %} {% blo

如果我转到“索引”或“公告”页面,我将分别向模板发送带有“索引”或“公告”页面名称的嵌入文本。它应该将活动类设置为导航栏中的当前链接

这是我在index.html模板中的代码

{% if embed_text.page_name == 'index' %}
    {% block movies_active %}active{% endblock %}
{% endif %}
{% if embed_text.page_name == 'announcements' %}
    {% block announcements_active %}active{% endblock %}
{% endif %}
它是base.html模板中扩展到index.html的代码

<li class="{% block movies_active %}{% endblock %}"><a href="{% url 'movies:index' %}"> Movies</a></li>
<li class="{% block announcements_active %}{% endblock %}"><a href="{% url 'movies:announcements' %}"> Announcemets</a></li>

  • 因此,每次两个表达式都返回True并将两个链接设置为活动时,您可以在图片中看到它。我知道,我遗漏了一点细节。请帮助解决此问题。

    标记不受
    if
    标记的影响。你可以试试这个

    {% block movies_active %}{% if embed_text.page_name == 'index' %}active{% endif %}{% endblock %}
    {% block announcements_active %}{% if embed_text.page_name == 'announcements' %}active{% endif %}{% endblock %}