我有一个相对简单的宏,其中包含一些非常重复的代码的布局。
{% macro build_thing(var1, var2, var3) %}
<div class="col-md-4 col-sm-6">
<a href="{{ var1 }}"></a>
<div class="caption">
<h4>{{ var2 }}</h4>
<p class="text-muted">{{ var3 }}</p>
</div>
</div>
{% endmacro %}
实际的宏有点长,但基本上非常相似。如果我将代码直接放入我使用它的模板(比如home.html),并用
调用它{{ build_thing("genericClass", "Lorem Ipsum", "More Filler") }}
然后页面呈现完美,没有问题。但是,如果我将代码放入另一个模板文件(例如macros.jinja)并尝试通过
导入宏{% from "macros.jinja" import build_thing %}
它呈现页面,但在整个宏周围加上引号,所以所有代码都变为纯文本而不是html。我已经尝试在堆栈溢出中搜索解决方案,但我找不到类似的问题。此外,宏的documentation对提供任何见解也没有多大帮助。
任何帮助将不胜感激!