1

私のテンプレートでは、変数に格納されている文字列に改行が含まれているかどうかを確認したいと考えています。ただし、チェックで使用される文字列リテラルの改行文字をエスケープする方法は見つかりませんでした。明らかなこと

{% if "\n" in description %}
...
{% endif %}

「\」を自動エスケープするようです。

もちろん、簡単なカスタム フィルターやモデル メソッドをいつでも実装できますが、もっと簡単な方法が必要だと思いました。Djangoテンプレートのコンテキストでの「エスケープ」は、文字列文字ではなくHTMLのエスケープに主に関係しているため、Webでこれを検索するのは困難です...

4

1 に答える 1

1

テンプレートに渡されるコンテキスト dict にキーを配置し、newlineおそらくそれを値で呼び出すことができます"\n"{% if newline in description %}その後、テンプレートのように行うことができます。

編集: Django のソースを確認しましたが、これを行う組み込みの方法は実際にはありません。テンプレート文字列リテラルで処理される唯一のエスケープ シーケンスは、バックスラッシュ引用符と二重バックスラッシュです。

于 2012-11-13T07:31:33.430 に答える