解释文本文件中的文字 HTML 标记



我正在使用带有Jinja2模板的Flask来构建静态网页。我正在从.txt文件中获取页面文本。我想做的是从.txt文件中传递文字 HTML 标记,并在 DOM 中对其进行解释。 目前,它按字面意思表示的文本,如果我查看页面源代码,则标签以转义字符解释。

发短信

The map uses the <a href="google.com">Google</a> API.

.HTML

<p>{{ text }}</p>  <!-- text above goes here -->

锚标记不是表示为 HTML 标记,而是像这样表示:

&lt;a href=&#34;google.com&#34;&gt;google&lt;/a&gt;

我怎样才能做到这一点?

这是因为 Flask 会自动转义模板变量中包含的任何 HTML 标记,以避免常见的安全问题。

有关如何禁用此功能,请参阅文档 - 一种简单的方法是将{{ text}}替换为{{ text|safe}}

但请注意,如果text变量可能来自"不安全"源(如不受信任的用户(,则不得执行此操作。

最新更新