Szablon django wyświetla wartość elementu lub pusty ciąg


88

Mój kod w szablonie wygląda tak:

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

Chcę wyświetlić wartość pozycji, jeśli item.somefield nie ma wartości None, lub wyświetlić pusty ciąg. Nie chcę używać instrukcji {% if item.somefield%}, chcę coś takiego jak {{item.somefield lub ''}} (próbowałem, ale to nie działa)

Odpowiedzi:


225

Chcesz default_if_nonefiltr szablonu, ( doc ).

default_if_none wyświetli podany ciąg, jeśli zmienną jest „Brak”.

default wyświetli łańcuch, jeśli wartość zmiennej ma wartość False, tj. puste łańcuchy, puste listy itp

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

Dzięki @rockingskier;)
Moe Far

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

5
Możesz chcieć dodać wyjaśnienie do swojej odpowiedzi, a nie tylko kod. Pomaga to osobie, która zadała pytanie, lepiej zrozumieć Twoją odpowiedź.
Victor Zamanian
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.