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 に答える