web-dev-qa-db-fra.com

django modèle affiche la valeur de l'élément ou une chaîne vide

Mon code dans le modèle est comme ceci:

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

Je souhaite afficher la valeur de l'élément si item.somefield n'est pas None ou afficher une chaîne vide. Je ne veux pas utiliser l'instruction {% if item.somefield%}, je veux quelque chose comme {{item.somefield ou ''}} (j'ai essayé mais cela ne fonctionne pas)

68
Roger Liu

Vous voulez le default_if_none filtre de modèle, ( doc ).

default_if_none affichera la chaîne donnée si la variable est 'None'.

default affichera la chaîne si la variable est évaluée à False, c'est-à-dire des chaînes vides, des listes vides, etc.

{{ item.somefield|default_if_none:"" }}
{{ item.somefield|default:"" }}
173
rockingskier
{{ item.somefield|default_if_none:"" }}
9
matino