Bri*_*unt 28 jquery jinja2 jquery-templates
我正在尝试将jQuery模板插入到Jinja2模板中.唉,他们(在默认设置中)分别使用胡须{{和}}表示表达式和文字.
我将我的jQuery模板插入带有script标签的HTML中,如下所示:
<script type='text/x-jquery-template'>
<div>The people are:
{{ each people }}
${$value}
{{ /each }}
</div>
</script>
Run Code Online (Sandbox Code Playgroud)
然而,如果上面是Jinja模板,它就会因为Jinja试图将其解释each为文字而贬低.
在这种情况下(我们已经有很多模板),改变Jinja2的变量开始和结束分隔符是不切实际的.此外,它令人困惑,降低了互操作性,并需要额外的培训.最好避免使用此选项.
所以我想到的两个替代方案就是:
Jinja2逃避每个'{{'和'}}',我不太确定如何做得最好("{{"{{"}}`,也许,但这很冗长);
更实际 - 也许是理想的 - 会告诉Jinja2 不要解析代码块,也许是通过jQuery扩展.
我很感激你的想法和反馈.谢谢你的阅读.
Cam*_*ron 54
您可以使用该{% raw %}{% endraw %}构造来缓解逃避的困境(直接来自Jinja2文档).
例:
<script type='text/x-jquery-template'>
<div>The people are:
{% raw %}<!-- Everything in here will be left untouched by Jinja2 -->
{{ each people }}
${$value}
{{ /each }}
{% endraw %}
</div>
</script>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7228 次 |
| 最近记录: |