1. ホーム
  2. python

[解決済み] django テンプレートは、アイテムの値または空の文字列を表示します。

2022-10-31 21:58:48

質問

テンプレート内の私のコードは以下のようなものです。

{% for item in items %}
    {{ item.somefield }}
{% endfor %}

item.somefieldがNoneでない場合、または空文字列を表示させたいのです。if item.somefield %}という記述は使いたくないので、{{ item.somefield or '' }}のようにしたいのです(試しましたがうまくいきません)。

どのように解決するのですか?

あなたは default_if_none テンプレート・フィルタ、( doc ).

default_if_none は、変数が'None'であれば、与えられた文字列を表示します。

default は、変数がFalseと評価された場合、つまり、空の文字列や空のリストなどの場合、その文字列を表示します。

{{ item.somefield|default_if_none:"" }}
{{ item.somefield|default:"" }}