2010-01-26 40 views
10

我正尝试在我的主页中显示一个Django模型内存储原始未转义的HTML。但是,当我将它存储在TextField中时,它会被转义,并最终显示为原始文本。如何将原始HTML存储在Django模型中?Django - 在模型中存储未转义的html

**编辑**

看来,如果它不是在模型层越来越逃过一劫,但在模板层。是否有我应该使用的特殊标签?我检查了shell中的值,它很好,但由于某种原因,当我在模板中{{block.html}(html是存储实际HTML的块对象的属性)时,它出现如下所示:

<p>This is a <strong>very</strong> <em>important</em> <span style="text-decoration: underline;">block</span></p> 
<p style="padding-left: 30px;">it has very significant content!</p> 
+0

不,它没有。我敢于证明,否则。 – 2010-01-26 06:12:24

回答

15

可以使用safe过滤器呈现转义文本,或escape过滤呈现逃脱文本。您也可以使用autoescape标记来设置块。 ({% autoescape on %}{% autoescape off %}

+0

请注意使用'| safe'过滤器或禁用​​autoescape时的安全隐患。确保通过该过滤器/块的任何通过实际上是安全的。 – 2013-08-10 15:36:59