2012-06-25 3 views
1

Я пытаюсь использовать тег 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"),) 

Что Вы думаете?

ответ

1

Это было исправлено в ветке dev, но еще не выпущено. Я только что выпустил 1.1.3, который содержит исправление, поэтому, если вы обновите его, это должно сработать.

Смежные вопросы