autoescape jinja2 python模板值

时间:2014-01-22 01:59:52

标签: python blogs jinja2 hashtag

我正在使用Jinja2制作一个Python博客作为我的模板引擎。在我的博客中,有一个消息框,一个消息框和另一个消息框。在您的消息中,您可以标记某些单词。我设法得到它,以便当用户提交带有主题标签的消息时,包含主题标签的单词将成为链接。

if title and message:
    for word in message.split():
        if word[0] == "#":
            message =message.replace(word, "<a href="+word+">%s</a>" % word)
    m = Message(title = title, message = message)
    m.put()                  

问题是,要允许HTML显示为链接而不是HTML,我必须在Jinja2中禁用自动转换,即使我想要它。是否有人在Jinja2而不是Python中创建此代码,这仍然是启用autoescape。

1 个答案:

答案 0 :(得分:0)

您传递的信息将如下所示

{{blog.message | e}}

所以链接的内容看起来像

“这是a link

而不是

“这是&lt; a href =”http://www.example.com/“&gt;链接”

此处的文档。 http://jinja.pocoo.org/docs/templates/#html-escaping