У меня есть мнение:меню навигации с Django
def about(request):
return render(request, 'about.html', {'page_about_exist':1,})
В HTML у меня есть этот код:
<li {% if page_about_exist %} class="active" {% endif %}><a href="{% url about_project %}"> About</a></li>
Итак, если я иду в О-странице, в меню есть класс активного , и я вижу это визуально. Есть ли другой способ без словаря? Потому что у меня есть в url
url(r'^accounts/login/$', 'django.contrib.auth.views.login', name='login',),
и мой способ со словарем отлично смотрится там. Благодарю.
Это работает, но не СУХОЙ. Я предпочитаю подход на велосипедах. –
@NickBewley Где повторение? –
Разница заключается в том, что она записывается один раз в 'base.html' и записывает его несколько раз в каждом шаблоне. Кроме того, имеет смысл хранить все базовые элементы (т.е. навигация) в 'base.html'. Как я уже сказал, наследование - это неправильный подход, но, на мой взгляд, добавляет ненужные элементы унаследованным шаблонам. –