【问题标题】:django-cms getting the page context in an application hookdjango-cms 在应用程序挂钩中获取页面上下文
【发布时间】:2014-08-04 02:24:43
【问题描述】:

考虑一下这个 cms_app.py

from django.utils.translation import ugettext_lazy as _
from cms.app_base import CMSApp
from cms.apphook_pool import apphook_pool


class FooHook(CMSApp):
    name = _("FooHook Plugin")
    urls = ["foo.urls"]

apphook_pool.register(FooHook)

foo 应用程序有一个视图模型,其中包含默认的 django 视图、ListView 和 DetailView.. 这些有它们的默认模板,继承自 base.html,它们是 foo_list.html 和 foo_detail.html..

文档完全不清楚如何在这些模板中获取,例如 cms 页面的侧边栏内容或页面上下文变量。

Feincms 有 {% fragment %} 模板标签用于此目的,如何在 django-cms 中实现这一点?

【问题讨论】:

  • 这不是关于 feincms,是吗?您可能想删除该标签。

标签: django django-cms feincms


【解决方案1】:

要访问该页面,您可以使用 {{ request.current_page }} 要在模板中使用插件系统,请使用 {% static_placeholder my_name %} 而不是 {% placeholder %} 标签。

最好在 apphooks 中使用 static_placeholders,因为您不知道页面实际具有什么模板和占位符。

【讨论】:

    猜你喜欢
    • 2012-02-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多