3

所以在 Jinja2 我有这个代码:

<div id='posts'>
    <!-- Display all posts -->
    {% for p in posts %}
        <div class='post'>
            <h3>{{ p[1] }}</h3>
            {{ p[2] }}  
        </div>
    {% endfor %}
</div>  

p[2]就是这里重要的。它只是一个值为 的 unicode 字符串"<p>content</p> <b>bold</b>"。我希望它显示为 html,但是当我加载页面时,它是这样显示的:

它显示不正确

但是,当我查看页面源时,它看起来像这样:

&lt;p&gt;content&lt;/p&gt; &lt;b&gt;bold&lt;/b&gt;

我想要的只是让它显示为普通的 HTML。我觉得这是一些奇怪的编码问题,我对此知之甚少。任何帮助表示赞赏!

4

1 回答 1

4

这是自动转义。它可以保护您免受 XSS 注入之类的攻击。

如果您确定您的内容是安全的,您可以使用以下命令将其关闭

{% autoescape false %}...{% endautoescape %}
于 2013-07-04T14:37:09.670 回答