Pergunta

Normalmente quando você quer saída de string marca como seguro em Jinja2 você faz algo parecido com isto:

{{ output_string|safe() }}

No entanto, o que se output_string é sempre seguro? Eu não quero me repetir cada vez usando o filtro de segurança.

Eu tenho um filtro personalizado chamado "emailize" que Preps urls para a saída em um email. Os ampersands sempre parecem tornar-se escapou. Existe uma maneira no meu filtro personalizado para marcar a saída como seguro?

Foi útil?

Solução

Use a Markup classe:

classe jinja2.Markup ([string])

Marcas uma string como sendo seguro para inclusão em HTML / saída XML sem a necessidade de ser escapado.

Outras dicas

Verifique SafeString , como por exemplo:

from django.utils.safestring import SafeString
...
return context.update({
        'html_string': SafeString(html_string),
})
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top