Maison > Questions et réponses > le corps du texte
由于vue的 {{}}
和jinja 冲突 所以我把 vue的改成了 {[]}
{{url_for('static', filename='{[id]}.jpg')}}
然后输出是
/static/%7B%5Bid%5D%7D.jpg
想了个很蠢的办法
{{ url_for('static', filename='{[id]}.jpg').replace('%7B%5B','{[').replace('%5D%7D',']}')}}
阿神2017-04-18 09:43:15
La première solution est de changer la syntaxe de jinja2, mais ce n'est pas recommandé
env = Environment(variable_start_string="${", variable_end_string="}")
De cette façon, le séparateur de variables de Jinja2 peut être modifié en "${}", et bien sûr, davantage de paramètres peuvent être effectués. Mais ce n'est pas seulement inhabituel pour les rédacteurs de modèles côté serveur, mais un problème plus grave est que certains éditeurs de ce type de modèles ne peuvent pas reconnaître ce symbole.
La meilleure solution est de changer la syntaxe de VUE. Je la définis de cette façon dans tous les projets et je l'écris simplement devant le code VUE, afin qu'il n'y ait aucun problème avec la migration du code
// ES6 模板字符串
Vue.config.delimiters = ['${', '}']
// 修改文本插值的定界符。
Vue.config.unsafeDelimiters = ['{!!', '!!}']
// 修改原生 HTML 插值的定界符。
高洛峰2017-04-18 09:43:15
Vous pouvez strictement limiter le {{}} dans JinJa à {{ xx }} Mes projets sont tous configurés comme ça
.app.jinja_env.variable_start_string = '{{ '
app.jinja_env.variable_end_string = ' }}'