Estou construindo um administrador para o Flask e o SQLAlchemy e quero passar o HTML para as diferentes entradas para minha exibição usando render_template
. A estrutura de modelos parece escapar automaticamente do html, para que todos os <"'> sejam convertidos em entidades html. Como posso desabilitar isso para que o HTML seja renderizado corretamente?
163
userHome.html
e gostaria de usá-return render_template('userHome.html')
lo, mas ele não é renderizado corretamente e todos se voltam para entidades html no meu console do Chrome.trans
tag, isso deve ser usado como{% trans something=something|safe %}A {{something}} B{% endtrans %}
Você também pode declarar HTML seguro a partir do código:
Em seguida, passe esse valor para os modelos e eles não precisam
|safe
.fonte
Na seção de documentos jinja, escape de HTML :
Exemplo:
fonte
Quando você tem muitas variáveis que não precisam ser escapadas, pode usar um
autoescape
bloco:fonte
Algumas pessoas parecem desativar a saída automática, o que acarreta riscos de segurança para manipular a exibição de strings.
Se você deseja inserir apenas algumas quebras de linha em uma string e convertê-las em
<br />
, você pode usar uma macro jinja como:e no seu modelo basta chamar isso com
fonte