2013-10-14 14 views

risposta

15

semplicemente

{% if !info.length %} 
... 
{% endif %} 

Ciò corrisponderà stringhe (""), array ([]) e qualsiasi altro oggetto che non ha una proprietà con un valore .length truthy.

+1

Sì. Swig non ha "prove" come Jinja e Twig. Ci sono miglioramenti integrati supportati che si traducono direttamente in JavaScript, come nell'esempio qui riportato. –

+0

Hey Paul, lo swig è davvero carino e avrei dovuto saperlo prima. Una domanda: qual è il modo migliore per verificare se un elemento si trova in un array: scriverei un filtro per questo, giusto? – sebilasse

0
{% if Object.keys(info).length != 0 %} 

per un oggetto/dict prova vuoto

0

Si noti che se si desidera differenziare un valore non definito da un valore pari a zero in un campo con tipo di numero, è necessario fare:

//this test will be true only on undefined values 
{% if !field and field!==0 %} // note the double = !!. indeed in swig and in js !undefined and !0 are both true values 
// this one will be true for undefined and 0 value fields 
{% if !field %} 
0
{% if Object.length > 0 %} 

{% endif %} 
Problemi correlati