使用 Flask 将 HTML 文本打印为纯文本

Ani*_*dey 2 html python jinja2 flask

以下是一个小片段,用于打印包含一些 html 标签的文本块,例如<strong></strong>

{% if doc.highlight %}
    {% for entry in doc.highlight.text %}
        {{entry}}<br>
    {% endfor %}
{% endif %}
Run Code Online (Sandbox Code Playgroud)

{{entry}}是具有像finds the optimum (least rate) uniquely <strong>decodable</strong>, variable length entropy. 这也将打印带有 HTML 标签的文本!!

我应该如何解决这个问题?

Kev*_*uan 6

因为 Jinja2 会自动转义 HTML 标签,要禁用它,请尝试:

{% if doc.highlight %}
    {% for entry in doc.highlight.text %}
        {{ entry|safe }}<br>
    {% endfor %}
{% endif %} 
Run Code Online (Sandbox Code Playgroud)

安全过滤器

[标记] 该值是安全的,这意味着在启用自动转义的环境中,该变量不会被转义。