Подтвердить что ты не робот

Jinja2: html escape-переменные

Как я могу html-escape опасный unsanitized вход в jinja2?

Могу ли я сделать это внутри шаблона или это нужно сделать в коде python?

У меня есть переменная, которая может содержать символы da <ngero> u & s. Как избежать этого в jinja2

4b9b3361

Ответ 2

Вы также можете указать окружению autoescape все:

e = Environment(loader=fileloader, autoescape=True)

Примечание: в jinja1 это auto_escape

Ответ 3

Если вы хотите избежать html в своей программе, вы можете сделать это, как это (пример):

>>> import jinja2
>>> jinja2.__version__
'2.6'
>>> a
'<script>alert("yy")</script>'
>>> jinja2.escape(a)
Markup(u'&lt;script&gt;alert(&#34;yy&#34;)&lt;/script&gt;')
>>> str(jinja2.escape(a))
'&lt;script&gt;alert(&#34;yy&#34;)&lt;/script&gt;'