javascript - flask jinja2 template 和前端template冲突
PHP中文网
PHP中文网 2017-04-11 13:23:19
[JavaScript讨论组]

问题描述:

小弟用了前端的template.js做模板,从后端获取数据然后渲染,但是在flask里貌似和jinja2模板引擎冲突了。报错截图如下:

前端code:


小弟请教两个问题:

1.如上,怎么解决这个问题。
2.如果我不用flask的template引擎,我想返回html,怎么返回比较好,是read()这个文件,然后return 这个字符串,设置一下text/html的header吗?
PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(3)
PHPz

原因找到了,是因为"{"和"%"连在一起和jinja2的某个tag冲突了,所以出现了问题。
正确的代码如下:

<script type="text/html" id="test-js">
    <% for(var system in data){ %>
        <ul>system: <%=system%></ul>
    <% } %>
</script>
ringa_lee

在flask的view.py里面
加两行,

app.jinja_env.variable_start_string = '{{{{'
app.jinja_env.variable_end_string = '}}}}'

四个括号也可以改成其他,
用这个代替''{''

参考
http://panmax.love/2016/%E8%A...

迷茫

用 {% raw %} 和 {% endraw %} 隔离前端的template

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号