我正在尝试使用自定义 cms 插件在另一个页面中呈现 cms 页面。这是我的插件类:
class PageInDiv(CMSPlugin):
page_div = models.ForeignKey(Page, verbose_name= "page")
def __unicode__(self):
return self.page_div.get_title()
如您所见,它所做的只是将插件链接到一个页面,然后在我的 cms_plugins.py 上
class PageInDivPlugin(CMSPluginBase):
model = PageInDiv
name = _("Page in div")
render_template = "page.html"
admin_preview = False
def render(self, context, instance, placeholder):
temp = loader.get_template(instance.page_div.get_template())
html = temp.render(context)
context.update({
'html': html,
'title':instance.page_div.get_title(),
'placeholder':placeholder,
})
return context
如您所见,我将所提供页面的 html 传递给插件模板,然后插件模板在托管插件的页面中呈现。我遇到的问题是通过外键选择的页面中的占位符内容没有被呈现(显示)。所以我的问题是,有没有办法以编程方式呈现页面占位符?