template django menampilkan nilai item atau string kosong


91

Kode saya di template seperti ini:

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

Saya ingin menampilkan nilai item jika item.somefield bukan None, atau menampilkan string kosong. Saya tidak ingin menggunakan pernyataan {% if item.somefield%}, saya ingin sesuatu seperti {{item.somefield atau ''}} (Saya mencoba ini tetapi tidak berhasil)

Jawaban:


232

Anda menginginkan default_if_nonefilter template, ( doc ).

default_if_none akan menampilkan string yang diberikan jika variabelnya adalah 'Tidak Ada'.

default akan menampilkan string jika variabel bernilai False, misalnya string kosong, daftar kosong, dll

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

Terima kasih @rockingskier;)
Moe Far

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

5
Anda mungkin ingin menambahkan beberapa penjelasan pada jawaban Anda, bukan hanya kode. Ini membantu orang yang mengajukan pertanyaan untuk lebih memahami jawaban Anda.
Victor Zamanian
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.