どのようにJinja2の中のビュー(またはテンプレート)に「安全」などの文字列をマークしていますか?
-
13-09-2019 - |
質問
一般的に、あなたはこのような何かをJinja2の中のように安全な文字列出力をマークしたいときます:
{{ output_string|safe() }}
しかし、何output_stringがある場合は、の常にの安全ですか?私は安全なフィルタを使用することによって自分自身を毎回繰り返す必要はありません。
私は、電子メールでの出力のためのURLをプレップ「emailize」と呼ばれるカスタムフィルタを持っています。アンパサンドは常にエスケープになっているようです。安全と出力をマークするために私のカスタムフィルタでの方法はありますか?
解決
マークアップのクラスを使用します:
クラスjinja2.Markup([文字列])
はエスケープする必要がなく、HTML / XML出力に含めるため安全であるとして文字列をマークします。
他のヒント
SafeString 例えば、同様ます:
from django.utils.safestring import SafeString
...
return context.update({
'html_string': SafeString(html_string),
})
所属していません StackOverflow