DjangoCMS:应用程序集成并在非 cms(应用程序)页面上使用 CMS 内容?

Posted

技术标签:

【中文标题】DjangoCMS:应用程序集成并在非 cms(应用程序)页面上使用 CMS 内容?【英文标题】:DjangoCMS: Application Integration and using CMS content on non-cms (app) pages? 【发布时间】:2012-05-27 13:16:40 【问题描述】:

我正在将 DjangoCMS 用于网站,并且正在尝试添加注册应用程序。把它放在一切都很好,目前硬编码到 urls conf 中,但是,我想使用 CMS 在注册流程中的某些页面上设置内容..

例如在注册应用程序在其流程中使用的几个页面上,如“注册”、“激活”、“激活过期”等我想将 CMS 内容用于相对静态的文本、预告片等......使用文本和其他插件等

(我尝试在 django-cms 中设置与注册页面相同的页面结构的页面(例如,由于我的注册页面位于 /account/register 下,我创建了一个带有孩子的 account 页面-page register .. 并将注册表单的模板添加到 CMS 模板中...)。这适用于某些 CMS,但不适用于 djano-cms... :-(.. django-cms 接管的那一刻注册应用程序的视图不再涉及,因此表单不起作用,等等...)

有没有办法做到这一点?

【问题讨论】:

【参考方案1】:

我记得,您可以使用show_placeholder 标签来显示来自任何页面的任何占位符的信息。因此,将您的注册 url 放在 django-cms 之前,并在您的页面中添加一些引用您的特殊 CMS 页面的标签(该页面现在应该显示在菜单中,当然)。

【讨论】:

这似乎几乎可以工作。谢谢你的建议!尽管如果我的页面的 url 与“虚拟”django-cms 页面的 url 相同,则渲染不起作用,无论我自己的注册 url 是在 django-cms 之前还是之后。在 django-cms 中此页面存在相同 url 的那一刻,页面似乎无法正确呈现,并且我自己的视图注入的内容不可用。解决方案似乎是有一个单独的页面,它不是导航的一部分,然后使用 show_placehoder .... 访问特定占位符的内容有点脏但现在可以使用 我不记得cms url是如何工作的,有一段时间没用了。感谢您的指正! 嗯.. 对更正感到抱歉...我在另一台机器上尝试过它并且它有效,当应用程序页面和 CMS 中的“虚拟”页面的 url 相同时.. . 然后我在家里的机器上重新启动了服务器,它也工作了.. 一定是缓存问题...所以你是对的...谢谢

以上是关于DjangoCMS:应用程序集成并在非 cms(应用程序)页面上使用 CMS 内容?的主要内容,如果未能解决你的问题,请参考以下文章

djangocms与apphook对象集成filer_image

Django cms 内容以草稿模式发布

如何在 djangocms 中设置自定义模板

Django CMS 3 检测我是不是面临“结构”或“内容”

Django cms 文本编辑器 (CKEditor) 插件

将 django cms 作为应用程序导入现有的 django 项目