我试图从上下文中获取页面和请求,以便能够在块内使用分页。我得到的唯一背景是
环境{'自我':无,'价值':无}
甚至可以在流域块中进行分页吗?
class CustomStaticBlock(blocks.StaticBlock):
def get_context(self, value):
context = super(CustomStaticBlock, self).get_context(value)
使用
进行渲染{% include_block block%}
答案 0 :(得分:3)
来自外部页面的上下文在块模板中可用,但遗憾的是不在get_context
方法中。 (这是由于模板上下文的构建方式 - get_context
的结果是merged into the parent context。)这是一个已知的限制:
https://github.com/wagtail/wagtail/pull/2786#issuecomment-230416360 https://github.com/wagtail/wagtail/issues/2824
可能的解决方法是覆盖render
方法(这无疑是不理想的,因为您必须重复其中的部分或全部现有render
逻辑。
答案 1 :(得分:2)
现在正在工作(get_context
内)。如果有人对StreamField
有同样的问题,请务必将其呈现为:
{% for block in page.body %}
{% include_block block %}
{% endfor %}
以下内容无效(空parent_context
):
{% include_block page.body %}
{{ page.body|safe }}