我正在尝试将jQuery 模板插入Jinja2模板。唉,它们(在默认设置中)都使用小胡子{{
&}}
分别表示表达式和文字。
我将我的 jQuery 模板插入带有script
标签的 HTML 中,如下所示:
<script type='text/x-jquery-template'>
<div>The people are:
{{ each people }}
${$value}
{{ /each }}
</div>
</script>
但是,如果上面的内容在 Jinja 模板中,它就会犹豫,因为 Jinja 试图解释each
为文字。
在这种情况下(我们已经有很多模板),更改 Jinja2 的变量的开始和结束分隔符是不切实际的。此外,它令人困惑,降低了互操作性,并且需要额外的培训。最好避免使用此选项。
所以我想解决这个问题的两个替代方法是:
Jinja2 转义每个 '{{' 和 '}}',我不太确定如何做到最好(也许是“{{ “{{” }}`,但这很冗长);
更实际的——也许是理想的——告诉 Jinja2不要解析代码块,也许是通过 jQuery 扩展。
我会很感激你的想法和反馈。感谢您的阅读。