Я пытаюсь использовать тег overextends из мезонина для переопределения и расширения существующего шаблона, который поставляется с мезонином.mezzanine overextends tag return пустой шаблон
Что в основном делает то, что он удаляет сам текущий шаблон, удалив себя из списка шаблонов при поиске доступных шаблонов, так что можно перенапрягать шаблон, используя то же имя без circular reference
.
Я знаю, что есть и другие способы, чтобы решить эту проблему, но я не хочу, чтобы написать мнение, которое визуализирует другой шаблон (с другим именем), когда я просто хочу, чтобы изменить новый block
тег в шаблоне.
В документации говорится, что я могу просто использовать его, поскольку я бы использовал тег extends
, но когда я это сделаю, он просто возвращает мне пустой шаблон.
Вот моя структура проекта:
project_dir
-|blog
--|__init___.py
--|templates
---|blog_post_detail.html
---|blog_post_list.html
-|override
--|__init__.py
--|admin.py
--|templatetags
---|__init__.py
---|extensive_tags.py
Вот пример шаблона, который не работает:
{% overextends "blog/blog_post_list.html" %}
{% load mezzanine_tags extensive_tags i18n %}
{% block right_panel %}
{% get_best_posts_for_category blog_post 3 as best_posts %}
{%if best_posts %}
<ul class="nav nav-list">
<li class="nav-header">BU KATEGORİDEKİ EN İYİ POSTLAR</li>
{% for best_post in best_posts %}
<li>
<a href="{{ best_post.get_absolute_url }}">{{ best_post.title }} ({{ best_post.rating_average }})</a>
</li>
{% endfor %}
</ul>
{% endif %}
{% endblock %}
Вот INSTALLED_APPS
в settings.py
:
INSTALLED_APPS = (
"blog",
"django.contrib.admin",
"django.contrib.auth",
"django.contrib.contenttypes",
"django.contrib.redirects",
"django.contrib.sessions",
"django.contrib.sites",
"django.contrib.sitemaps",
"django.contrib.staticfiles",
"mezzanine.boot",
"mezzanine.conf",
"mezzanine.core",
"mezzanine.generic",
"mezzanine.blog",
"mezzanine.forms",
"mezzanine.pages",
"mezzanine.galleries",
"mezzanine.accounts",
"override",
)
и TEMPLATE_DIRS
в settings.py
:
TEMPLATE_DIRS = (os.path.join(PROJECT_ROOT, "templates"),)
Что Вы думаете?