我有一个通过apphook到django-cms的新闻应用程序。它有一个共同的占位符,需要通过其文章来呈现
我试过用
{% block left-slogan %}
{% show_placeholder "left-slogan" inherit %}
{% endblock %}
我还试图放置apphooked页面的reverse_id并将app_name添加到cms_app.py,两者都无济于事。
这是我的cms_app.py
class NewsApphook(CMSApp):
name = _("News")
urls = ["news.urls"]
apphook_pool.register(NewsApphook)
我的urls.py
from .views import NewsView, NewsDetailView
urlpatterns = patterns('',
url(r'^$', NewsView.as_view(), name='news'),
url(r'^(?P<slug>(.*))/$', NewsDetailView.as_view(), name='news_detail'),
)
编辑这是我的完整占位符树
base.html文件
{% load sekizai_tags cms_tags (...) %}
(...)
{% block left-slogan %}{% placeholder "left-slogan" %}{% endblock %}
(...)
default.html中
{% extends "base.html" %}
(...)
{% block left-slogan %}
{% placeholder "left-slogan" or %}
{% show_placeholder "left-slogan" "index" %}
{% endplaceholder %}
{% endblock %}
(...)
news_detail.html
(...)
{% block left-slogan %}{% show_placeholder "left-slogan" inherit %}{% endblock %}
(...)
有没有人知道如何在其子项中执行apphooked视图的show_placeholder?
感谢。
答案 0 :(得分:0)
您可能需要扩展left-slogan
占位符所在的模板,或者您需要将“左占位符”的内容移动到您可以通过ID引用的共享模板中。