Html Django模板块代码作为代码段包含时不起作用

Html Django模板块代码作为代码段包含时不起作用,html,django,django-templates,Html,Django,Django Templates,我想更改导航栏在不同页面中突出显示的状态。 当我通常将导航栏放在base.html中并添加块内容时,它会工作 <!DOCTYPE html> <html lang=en> <head> <title>Dashboard</title> {% include 'snippets/css.html' %} </head> <body> <!-- Sidebar Holder -->

我想更改导航栏在不同页面中突出显示的状态。 当我通常将导航栏放在base.html中并添加块内容时,它会工作

<!DOCTYPE html>
<html lang=en>
<head>

<title>Dashboard</title>
{% include 'snippets/css.html' %}
</head>
<body>
        <!-- Sidebar Holder -->
        <nav id="sidebar">


            <ul class="list-unstyled components">

                <li{% block nav_live %}{% endblock %}>
                    <a href="{% url 'live_now' %}"><i class="fa fa-users" aria-hidden="true"></i>Live Now</a>
                </li>
                <li{% block nav_out %}{% endblock %}>
                    <a href="{% url 'outcome' %}"><i class="fa fa-crosshairs" aria-hidden="true"></i>Outcome Score</a>
                </li>
                <li {% block nav_customer %}{% endblock %}>
                    <a href="{% url 'customer_search' %}"><i class="fa fa-search" aria-hidden="true"></i>Customer search</a>
                </li>
                <li {% block nav_journey %}{% endblock %}>
                    <a href="#homeSubmenu" data-toggle="collapse" aria-expanded="false"><i class="fa fa-map-o" aria-hidden="true"></i> Journey Shaping</a>
                    <ul class="collapse list-unstyled" id="homeSubmenu">
                        <li><a href="{% url 'persona' %}">-Persona</a></li>
                        <li><a href="#">-Outcomes</a></li>
                        <li><a href="#">-Action Maps</a></li>
                        <li><a href="#">-Auto Responses</a></li>
                    </ul>
                </li>
               <li {% block nav_analytics %}{% endblock %}>
                    <a href="#analyticsmenu" data-toggle="collapse" aria-expanded="false"><i class="fa fa-bar-chart" aria-hidden="true"></i>Analytics</a>
                    <ul class="collapse list-unstyled" id="analyticsmenu">
                        <li><a href="#">-Visitor Activity</a></li>
                        <li><a href="#">-Visit History</a></li>
                        <li><a href="#">-Action Map Performance</a></li>
                        <li><a href="#">-Interactions</a></li>
                    </ul>
                </li>
                <li{% block nav_settings %}{% endblock %}>
                    <a href="#settingsmenu" data-toggle="collapse" aria-expanded="false"><i class="material-icons md-18" >tune</i>Settings</a>
                    <ul class="collapse list-unstyled" id="settingsmenu">
                        <li><a href="{% url 'set_phone' %}">-Phone Number</a></li>
                        <li><a href="{% url 'track_code' %}">-Tracking Code</a></li>
                        <li><a href="#">-Action Map Performance</a></li>
                        <li><a href="#">-Interactions</a></li>
                    </ul>
                </li>
                <li{% block nav_people %}{% endblock %}>
                    <a href="#peoplemenu" data-toggle="collapse" aria-expanded="false"><i class="material-icons">people</i>People</a>
                    <ul class="collapse list-unstyled" id="peoplemenu">
                        <li><a href="{% url 'teams' %}">-Team Home</a></li>
                        <li><a href="#">-Visit History</a></li>
                        <li><a href="#">-Action Map Performance</a></li>
                        <li><a href="#">-Interactions</a></li>
                    </ul>
                </li>

            </ul>

        </nav>


{% block content %}{% endblock content %}
</div>
{% include 'snippets/js.html' %}
</body>
</html>
但是,当我尝试在base.html中将导航栏作为一个片段包含时,模板中不会呈现class=“active”

<!DOCTYPE html>
<html lang=en>
<head>

<title>Dashboard</title>
{% include 'snippets/css.html' %}
</head>
<body>
{% include 'snippets/nav.html' %}


{% block content %}{% endblock content %}
</div>
{% include 'snippets/js.html' %}
</body>
</html>

仪表板
{%include'代码段/css.html%}
{%include'代码段/nav.html%}
{%block content%}{%endblock content%}
{%include'代码段/js.html%}

这是因为include与extends不同。第一种情况是有效的,因为您正在扩展基本模板,但没有扩展nav代码段。一种解决方法是,使用与您已经构建的相同的结构,使nav扩展基础,然后所有子模板扩展nav。这是因为include与extends不同。第一种情况是有效的,因为您正在扩展基本模板,但没有扩展nav代码段。一种解决方法是,使用与您已经构建的结构相同的结构,使nav扩展基础,然后所有子模板扩展nav。
<!DOCTYPE html>
<html lang=en>
<head>

<title>Dashboard</title>
{% include 'snippets/css.html' %}
</head>
<body>
{% include 'snippets/nav.html' %}


{% block content %}{% endblock content %}
</div>
{% include 'snippets/js.html' %}
</body>
</html>