Какова наилучшая практика изменения стиля html-тегов после изменения URL-адреса в Django?

#django #frontend

Вопрос:

введите описание изображения здесь

Предположим, у меня есть такая навигационная панель, кнопки на которой становятся белыми при нажатии на нее (добавление «активного» класса). Но если кнопка перенаправляет на новый URL-адрес, панель навигации отображается заново, а значок «Домой» выделяется так, как он есть по умолчанию. Как перетащить этот «активный» класс на кнопку после перенаправления? Какова наилучшая практика в этом отношении? Я задаю неправильный вопрос?

Комментарии:

1. И как называется эта идея «оставшихся/статических стилей»? Чтобы я мог прочитать об этом. Спасибо.

Ответ №1:

Вы можете сделать что-то вроде:

views.py

 def render_about(request):

    # include title in context
    context = {
        'title' : 'About'
    }

    return render(request, 'about.html', context=context)
 

Затем в вашей навигационной панели:

base.html

 <nav>
  <a class="{% if title=='Home' %}active{% endif %}"> Home </a>
  <a class="{% if title=='About' %}active{% endif %}"> About </a>
  ...
</nav>
 

А затем добавьте стиль для active класса в свой css-файл.

Комментарии:

1. Спасибо, я думаю, этого достаточно. Это единственное, что нужно знать об этой схеме?

2. Нет — я обычно использую эту навигационную панель во всех своих проектах django.