我有以下非常简单的陈述,以令人震惊的方式呈现块。
{% for block in blocks %}
{% include_block block %}
{% endfor %}
for循环工作并迭代块,模板标记include_block也是如此。但是,在include_block执行的模板中无法访问变量'block'。
{% set background_image = block.background_image.image %}
在include_block调用的模板中调用的上述语句会引发以下错误。
'block' is undefined
这实际上没有意义,因为Wagtail的include_block文档声明变量会传递到被调用的模板中。
http://docs.wagtail.io/en/v1.9/advanced_topics/jinja2.html#include-block
我有以下语句,以便明确传入变量,但它仍然不起作用,
{% include_block block with context %}
答案 0 :(得分:2)
确实令人惊讶的是block
没有传递下来并且可能构成错误(编辑:请参阅下面的评论以进一步讨论该问题)
话虽如此,在块模板中,块值可以作为变量value
访问(参见StreamField template rendering部分的第6段)。