我有一个模板结构如下:
"base.jinja2"
{% macro a_macro() %}
{# Something #}
{%- endmacro %}
{# Something #}
{% include "the_second_template.jinja2" %}
"the_second_template.jinja2"
{{ a_macro() }} {# call a_macro function #}
对于此上下文,调用“a_macro”函数的语句不能执行“a_macro”函数形式的“the_second_template.jinja2”文件。
那么,有没有办法做到这一点?或者任何想做类似的想法?
由于
答案 0 :(得分:2)
从文档中:如果宏是在另一个模板中定义的,则必须先导入它。
答案 1 :(得分:1)
"the_second_template.jinja2"
{% import "base.jinja2" as html %}
{{ html.a_macro() }} {# call a_macro function #}