我正在关注 Flask 教程,他在 jinja2 模板中使用“ | safe ”。为什么我们需要这个管道符号和安全?
不使用 safe 它会打印所有 html 标签。
通过使用| safe
,它显示正确的格式。为什么会这样呢?
下面是jinja2代码:
{% extends "layout.html" %}
{% block body %}
<h1>{{article.title}}</h1>
<small>Written by {{article.author}} on {{article.create_date}}</small>
<hr>
<div>
{{article.body | safe}}
</div>
{% endblock %}
With | safe
Jinja2 将打印变量中的符号,这意味着它不会将“危险”符号转换为 html 实体(Jinja2 默认情况下会转义“危险”符号)。如果您信任变量的内容,请使用此选项,因为在相反的情况下可能存在漏洞XSS.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)