Выделение активных ссылок не работает на сайте Django

Я выполнил все необходимые шаги для выделения активных ссылок в моем проекте Django Website. Когда я нажимаю на "О нас", "Свяжитесь с нами" или "Услуги" в строке меню, ни одна из опций строки меню не подсвечивается, подскажите мне, как это сделать. Спасибо за доброе ожидание



<!-- Main header start -->
<header class="main-header sticky-header header-with-top">
    <div class="container">
        <nav class="navbar navbar-expand-lg navbar-light">
            <a class="navbar-brand company-logo" href="index.html">
                <img src="{% static 'img/logos/black-logo.png'%}" alt="logo">
            </a>
            <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar" aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">
                <span class="fa fa-bars"></span>
            </button>
            <div class="navbar-collapse collapse w-100" id="navbar">
                <ul class="navbar-nav ml-auto">
                    <li class="nav-item">
                        <a class="nav-link dropdown-toggle" href="#" id="navbarDropdownMenuLink" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
                            Home
                        </a>
                    </li>
                    <li class="nav-item">
                        <a class="nav-link" href="cars.html">
                            Cars
                        </a>
                    </li>
                    {% url 'about' as url %}
                    <li class="nav-item">
                        <a class="nav-link {% if request.path == about %} active {% endif %}" href="{{url}}">
                            About
                        </a>
                    </li>
                    {% url 'services' as url %}
                    <li class="nav-item">
                        <a class="nav-link {% if request.path == services %} active {% endif %}" href="{{url}}">
                            Services
                        </a>
                    </li>
                    {% url 'contact' as url %}
                    <li class="nav-item dropdown">
                        <a class="nav-link {% if request.path == contact %} active {% endif %}" href="{{url}}">Contact</a>
                    </li>
                    <li class="nav-item dropdown m-hide">
                        <a href="#full-page-search" class="nav-link h-icon">
                            <i class="fa fa-search"></i>
                        </a>
                    </li>
                </ul>
            </div>
        </nav>
    </div>
</header>
<!-- Main header end --> ```
{% if request.path == about %}

проверяет наличие переменной с именем about, но такой переменной с именем about не существует. Вы назвали ее url, поэтому:

{% if request.path == url %}

При этом я не думаю, что это хорошая идея. Как правило, структура меню в бэкенде представлена ссылками или используется JavaScript, который проверяет, является ли href (префиксом) пути, и автоматически выделяет его.

Вернуться на верх