次のように、スタイル タグ内のモデルから CSS を埋め込む必要があるテンプレートがあります。
<style>{{m.get_css_text}}</style>
(重要な場合、m は実際には for-in var です)
これは、IE でのみ発生する 1 つの不具合を除いて、問題なく動作します。CSS に、次のように引用符を使用するフィルター ルールが含まれているルールがあります。
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff", endColorstr="#f5f5f5") !important;
django のデフォルトのエスケープ動作は引用符をエスケープします。これは CSS ルールを破り、ルールが適用される IE の CSS を台無しにします。
もちろん、|safe フィルターを使用するとこの問題は解決しますが、私はそれを使用したくありません。今のところ、CSS を保持するモデルはスタッフのみが編集できますが、将来的にはユーザーが作成できるようになる可能性があります。
私の質問はこれです-引用符などのエスケープを防ぐためにどのフィルターを使用する必要がありますか?しかし、タグを安全に保ちますか? これまでの私の唯一のアイデアは removetags フィルターを使用することですが、それが最善のアイデアかどうかはわかりません。
ありがとう!