0

所以,我传递了一个包含 html 的“内容”属性的对象。

<div>{{ myobject.content }}</div>

我希望能够输出内容,以便将字符呈现为 html 字符。

“内容”的内容可能是:<p>Hello</p>

我希望将其发送到浏览器:<p>Hello</p>

有什么我可以在我的模板中自动执行此操作的吗?

4

2 回答 2

4

是的,{{ myobject.content | escape }}应该有帮助(假设您的意思是 Django 模板——没有特定的“App Engine”模板系统,GAE 应用程序经常使用 Django 模板系统);如果您想要两个级别的转义,您可能需要重复该| escape部分(在您提供的某些但并非全部示例中似乎是这种情况)。

于 2009-05-20T17:19:31.640 回答
2

这是 Django 的 django.utils.html.escape 函数:

def escape(html):
    """Returns the given HTML with ampersands, quotes and carets encoded."""
    return mark_safe(force_unicode(html).replace('&', '&amp;').replace('<', '&l
t;').replace('>', '&gt;').replace('"', '&quot;').replace("'", '&#39;'))

另外,请参见此处

于 2009-05-20T17:25:43.170 回答