Я создаю администратора для Flask и SQLAlchemy, и я хочу передать HTML для различных входных данных для моего представления, используя render_template
. Кажется, что шаблонная среда автоматически выходит из html, поэтому все <"'> преобразуются в html-сущности. Как я могу отключить это, чтобы HTML отображался правильно?
163
userHome.html
, и я хотел бы использоватьreturn render_template('userHome.html')
, но он не отображается правильно, и все превращаются в html-объекты в моей консоли Chrome.trans
теге этого должно быть использована в качестве{% trans something=something|safe %}A {{something}} B{% endtrans %}
Вы также можете объявить HTML безопасным из кода:
Затем передайте это значение шаблонам, и они не должны к
|safe
нему.источник
Из раздела Jinja Docs HTML Escape :
Пример:
источник
Если у вас много переменных, которые не нужно экранировать, вы можете использовать
autoescape
блок:источник
Некоторые люди, кажется, выключают autoescape, который несет риски безопасности, чтобы управлять отображением строки.
Если вы хотите вставить только некоторые разрывы строк в строку и преобразовать разрывы строк в
<br />
, то вы можете использовать макрос jinja, например:и в вашем шаблоне просто вызовите это с
источник