valor do item de exibição do modelo django ou string vazia


88

Meu código no modelo é assim:

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

Eu quero exibir o valor do item se o item.somefield não for Nenhum, ou exibir uma string vazia. Não quero usar a instrução {% if item.somefield%}, quero algo como {{item.somefield ou ''}} (tentei fazer isso, mas não funcionou)

Respostas:


225

Você quer o default_if_nonefiltro de modelo, ( doc ).

default_if_none irá exibir a string fornecida se a variável for 'Nenhum'.

default irá mostrar a string se a variável for avaliada como False, ou seja, strings vazias, listas vazias etc.

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

Obrigado @rockingskier;)
Moe Far

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

5
Você pode querer adicionar alguma explicação à sua resposta, em vez de apenas código. Isso ajuda a pessoa que fez a pergunta a entender melhor sua resposta.
Victor Zamanian de
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.