modello django visualizza il valore dell'elemento o una stringa vuota


91

Il mio codice nel modello è così:

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

Voglio visualizzare il valore dell'elemento se item.somefield non è Nessuno o visualizzare una stringa vuota. Non voglio usare l'istruzione {% if item.somefield%}, voglio qualcosa come {{item.somefield o ''}} (l'ho provato ma non funziona)

Risposte:


232

Vuoi il default_if_nonefiltro del modello, ( doc ).

default_if_none mostrerà la stringa data se la variabile è "Nessuno".

default visualizzerà la stringa se la variabile restituisce False, ovvero stringhe vuote, elenchi vuoti ecc

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

Grazie @rockingskier;)
Moe Far

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

5
Potresti voler aggiungere qualche spiegazione alla tua risposta, piuttosto che solo codice. Questo aiuta la persona che ha posto la domanda a capire meglio la tua risposta.
Victor Zamanian,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.