Comment comme « Safe » dans une vue de marquer des chaînes que vous (ou le modèle) dans Jinja2?

StackOverflow https://stackoverflow.com/questions/1269686

  •  13-09-2019
  •  | 
  •  

Question

En général, lorsque vous voulez marquer la sortie de chaîne en sécurité dans Jinja2 vous faites quelque chose comme ceci:

{{ output_string|safe() }}

Cependant, si output_string est toujours en toute sécurité? Je ne veux pas me répéter chaque fois en utilisant le filtre de sécurité.

J'ai un filtre personnalisé appelé « emailize » qui preps urls pour la sortie dans un courriel. Les esperluette semblent toujours devenir échappé. Est-il possible dans mon filtre personnalisé pour marquer la sortie en sécurité?

Était-ce utile?

La solution

Utilisez la classe Markup :

  

class jinja2.Markup ([string])

     

marque une chaîne comme étant sans danger pour l'inclusion dans la production HTML / XML sans avoir besoin d'être échappé.

Autres conseils

Vérifier SafeString , comme par exemple:

from django.utils.safestring import SafeString
...
return context.update({
        'html_string': SafeString(html_string),
})
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top