无法在jinja2中禁用autoescape

时间:2013-06-23 02:13:57

标签: google-app-engine escaping jinja2

在GAE中我使用jinja2和autoescape,一切运作良好。

import jinja2
jinja_env = jinja2.Environment(loader = jinja2.FileSystemLoader(template_dir), autoescape = True)

在一个模板中我不想要autoescape,所以我试着像这样禁用它:

{% autoescape false %}
{{content}}
{% endautoescape %}

当需要渲染此模板时,我收到消息Encountered unknown tag 'autoescape'.

2 个答案:

答案 0 :(得分:15)

试试这个:

{{ content | safe}}

文档:

答案 1 :(得分:6)

为了识别autoescape标记,您需要在设置jinja2时启用autoescape扩展,如下所示:

jinja_env = jinja2.Environment(loader = jinja2.FileSystemLoader(template_dir),
                               autoescape = True,
                               extensions = ['jinja2.ext.autoescape'])

另外,请确保您在app.yaml中使用jinja2 2.4或更高版本(current version is GAE为2.6):

libraries:
- name: jinja2
  version: "2.6"

有关详细信息,请参阅the documentation for the autoescape extension