我有以下名为 post-macro
的模板,但是当我在 page.html
模板中调用该宏时,它会插入一个带引号的字符串,其中包含HTML,而不是直接插入 HTML。
后宏
:
{% macro postmacro(post) %}
// html here
{% endmacro %}
page.html
:
{% from "post-macro" import postmacro with context %}
{{ postmacro(post) }}
它会像这样呈现页面。请注意输出周围的双引号。
"
html here
"
我需要更改什么才能直接获取 HTML 而不是用引号括起来?
最佳答案
将 post-macro
模板重命名为 post-macro.html
,Jinja 将直接渲染 HTML。
关于python - 为什么这个 Jinja 宏渲染文本而不是 HTML?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28597537/