【发布时间】:2015-01-06 22:51:32
【问题描述】:
我的 Django 模型有两个文本字段:
body = models.TextField()
body_html = models.TextField()
第二个是这样填充的:
def save(self, force_insert=False, force_update=False, using=None, update_fields=None):
self.body_html = "<br />".join(escape(self.body).split("\n"))
return models.Model.save(self, force_insert=force_insert, force_update=force_update, using=using, update_fields=update_fields)
不,如果我在模板中使用 body_html,我仍然必须:
{% autoescape off %}
{{ foo.body_html }}
{% endautoescape %}
但我不想让设计师决定什么是安全的,什么不是。那么如何在视图内甚至模型内将此字符串标记为“安全”以防止模板转义呢?
*我知道我可以在模板中使用|linebreaksbr,但这只是一个例子。我也打算在文本中嵌入图片。
【问题讨论】:
标签: django django-templates escaping django-1.7