【问题标题】:Django CMS - Call a cmsplugin in a template tagDjango CMS - 在模板标签中调用 cmsplugin
【发布时间】:2012-10-17 23:27:07
【问题描述】:

我的问题

使用 Django CMS 2.3.3,在创建页面时,我在其他几个 cmsplugins 旁边使用 cmsplugin_picture*。在我的 cms 模板中,而不是这样做:

{% placholder "content" %}  //calling the Django Page including all plugins...

我想分别调用每个 cmsplugin,但我该怎么做呢? 我查看了 Django 标签模板(过滤器)here 并研究了 Django CMS 模板标签 here,但似乎都没有暗示这种可能性。我不得不说我是一个初学者,所以我可能没有把这些点联系起来......

我想达到的目标:

在我的模板中,我有一个 IMG 标记(在 {% placeholder "content" %} 标记之外),我想用我在 Page/cmsplugin_picture 中定义的图像 url 填充它。所以我正在寻找一个允许我抓取该图像的占位符标签。在我最疯狂的梦想中,我会命名它:

{% show_placeholder "content" request.current_page.get_cmsplugin_picture %}

显然上面的行不通,但是这样的事情存在吗?

**我也尝试过 cmsplugin_filer,但对我来说,解决这个特定问题并不一定更有益。*

编辑: 我的意思是 Page/cmsplugin_picture -> 在 Django CMS 页面中,您可以在已安装的 cmsplugins 之间进行选择以添加到页面。就我而言,我选择 cmsplugin_picture 并上传图像(在该插件中)。这个图像我想在我的 Django 模板中“调用”。所以它不是一个静态的 url,而是动态的。

【问题讨论】:

  • 我想我无法理解这个问题。 “...我在我的 Page/cmsplugin_picture 中定义。” 是否要对 URL 进行硬编码,以便在图像占位符中有默认图像?
  • 感谢 jmeas 的关注,我澄清了这个问题。

标签: django django-templates django-cms django-tagging


【解决方案1】:

您应该在 img 标记所在的位置创建第二个占位符(并可选择使用 CMS_PLACEHOLDER_CONF 限制插件的类型和数量(http://docs.django-cms.org/en/2.3.3/getting_started/configuration .html#cms-placeholder-conf)。

【讨论】:

  • 很好用!谢谢ojii 解决方案: 在Settings.py CMS_PLACEHOLDER_CONF = { 'pica': { "plugins": ['PicturePlugin'] }, } // creates new placeholder option in admin 在my-template.html {% placeholder 'pica' %} // displays full img tag
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-10-01
  • 2014-02-22
  • 2011-07-22
  • 2019-04-09
  • 2014-03-20
  • 2010-11-29
  • 2014-05-11
相关资源
最近更新 更多