2013-06-23 14 views
12

W GAE używam jinja2 z autoescape i wszystko działa dobrze.Nie można wyłączyć autoescape w jinja2

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

W jednym szablonie nie chcę się autoescape, więc starałem się wyłączyć to tak:

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

Kiedy nadszedł czas, aby uczynić ten szablon dostaję komunikat Encountered unknown tag 'autoescape'.

+0

możliwy duplikat http://stackoverflow.com/questions/4674366/problem-with -jinja2-autoescape-in-google-app-engine-webapp – elssar

+0

Sprawdziłem to wcześniej, ale mam inny problem: ucieczka dla mnie działa zawsze i nie mogę jej wyłączyć (a nie działać tak, jak w innym poście) – stenci

Odpowiedz

6

Aby znacznik autoescape mógł zostać rozpoznany, musisz włączyć rozszerzenie autoescape podczas konfigurowania jinja2, na przykład:

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

Ponadto, upewnij się, że używasz jinja2 wersji 2.4 lub wyższej w app.yaml (the current version is GAE 2.6):

libraries: 
- name: jinja2 
    version: "2.6" 

Aby uzyskać więcej informacji, zobacz the documentation for the autoescape extension.

+2

Czy rozszerzenie rozwiązało problem? –

Powiązane problemy