Нужно передать текущий url в шаблон. Поиски приводят к одному и тому же -
{{ request.path }}
settings.py:
TEMPLATE_CONTEXT_PROCESSORS = ( 'django.contrib.auth.context_processors.auth', 'django.core.context_processors.debug', 'django.core.context_processors.i18n', 'django.core.context_processors.media', 'django.core.context_processors.static', 'django.core.context_processors.request', 'django.contrib.messages.context_processors.messages', )
from blog.models import Category from django.shortcuts import render_to_response def navigation(request): category = Category.objects.all().order_by('id') return render_to_response('blog/category.html', {'category':category})
category.html
<ul class="nav"> {% for category in category %} <li class="nav_item {% if category.slug in request.path %}active{% endif %}"><a href="/{{ category.slug }}">{{ category.name }}</a></li> {% endfor %} </ul>
Основная задача - добавить класс к активной ссылке на странице. Ещё я пробовал выводить request.path|length выводит 0, то есть, я так понимаю это вообще получается пустая строка. Так же в некоторых туриалах советовали делать свой контекстный фильтр, делал по инструкциям, добавлял в TEMPLATE_CONTEXT_PROCESSORS и всё равно результата 0. Если что не так написал, извините, только начинаю во всём разбираться…
Ах, да… Самое главное))) Хелп, плз.. направьте на путь истинный