Не работает {% page_url %} в django cms
3 декабря 2016 г. 3:46
Когда перестаёт работать какой-нибудь django-cms тег (например {% page_url %}
), проверьте передали ли вы context
при рендере шаблона. Эту ошибку я описывал в статье You must enable the 'sekizai.context_processors.sekizai'. В ней эта ошибка более подробно расписана, и, чтобы не повторяться, я просто приведу пример правильного использования context
для того, чтобы заработал рендер шаблона:
@register.inclusion_tag('quote.html', takes_context=True) def get_quote(context): context['quote'] = Quote.objects.last() return context
И сам шаблончик quote.html
:
{% load cms_tags %} <blockquote> <p>{{ quote.text|linebreaksbr }}</p> {% page_url 'quote-authors' as quote_authors_url %} {% if quote_authors_url %}<a href="{{ quote_authors_url }}" class="author">{{ quote.author }}</a> {% else %}<p class="author">{{ quote.author }}</p>{% endif %} </blockquote>
Похожие статьи:
Представляю вашему вниманию книгу, написанную моим близким другом Максимом Макуриным: Секреты эффективного управления ассортиментом.
Книга предназначается для широкого круга читателей и, по мнению автора, будет полезна специалистам отдела закупок и логистики, категорийным и финансовым менеджерам, менеджерам по продажам, аналитикам, руководителям и директорам, в компетенции которых принятие решений по управлению ассортиментом.
Комментарии: 0