Шаблоны Django / sekizai / classytags выдают ошибку о теге endif
Ошибка: Недопустимый тег блока: 'endif'.
Сначала о том, что ошибка - я обернул весь шаблон в состояние:
{% if something %}
{% else %}
{% load cms_tags sekizai_tags menu_tags %}
{% render_block "css" %}
{% render_block "js" %}
{% endif %}
И это заставляет django выдавать ошибку:
TemplateSyntaxError в /mypage/ недопустимый тег блока: 'endif'
Но проблема явно с classytags/sekizai, как
{% if something %}
{% else %}
<h1>Hello world</h1>
{% endif %}
рендерит без ошибок.
Кто-нибудь знает, как я мог избежать этой ошибки или исправить ее?
Теперь вторая часть - то, что я пытаюсь достичь, - я хочу отобразить несколько другую страницу HTML, когда запрос является запросом ajax. Условие должно быть, если request.is_ajax. Но если изменить, чтобы проиллюстрировать мою точку зрения в более четкой форме. Я использую django-cms, и он позволяет вам установить только один шаблон для каждой страницы. И это не было бы проблемой, если бы я мог обслуживать один и тот же контент, но с другим окружающим html в случае запросов ajax, но, к сожалению, рендеринг не удался...
1 ответ
Что ж, из документации довольно ясно, что использование {% render _block ... %} внутри другого блока тегов шаблона недопустимо.
Не могли бы вы просто сделать это, если условие внутри визуализированного блока?
редактировать: только что заметил, что вопрос был не так свеж. Ну что ж. Любопытно, как вы решили свою проблему...