1

我正在使用 FeinCMS。我想在页面对象进入模板进行渲染之前对其进行一些处理。

在我看来,我有代码:

this_page = Page.objects.best_match_for_path(request.path)

正确获取我所在路径的页面。

我真的很想从这个页面中获取一些数据。

我可以调用一个函数来获取数据吗?如 :

this_page = Page.objects.best_match_for_path(request.path)
data = this_page.get_content_for_region('main')

我在 readthedocs 页面中找不到任何东西来回答这个问题。我对模板或渲染区域不感兴趣。

4

1 回答 1

1

只需使用this_page.content- 它ContentProxy可以使您所在地区的所有内容类型都可用。换句话说,如果您有这样的模板定义:

Page.register_templates({
    'title': 'Standard template',
    'path': 'base.html',
    'regions': (
        ('main', 'Main content area'),
        ('sidebar', 'Sidebar'),
    ),
})

您可以循环this_page.content.mainthis_page.content.sidebar

for content in this_page.content.main:
    print(content.render())
于 2017-02-23T20:12:07.497 回答