Digamos que tengo esto:
{% if files %}
Update
{% else %}
Continue
{% endif %}
En PHP, por ejemplo, puedo escribir un condicional abreviado, como:
<?php echo $foo ? 'yes' : 'no'; ?>
¿Hay alguna manera de traducir esto para que funcione en una plantilla jinja2:
'yes' if foo else 'no'
Respuestas:
Sí, es posible usar expresiones if en línea :
fuente
{{ value if value else 'No value' }}
sería{{ value or 'No value' }}
{{ tobe or 'Not to be' }}
gracias a usted :){% %}
. Me gusta{% set your_var = 'Update' if files else 'Continue' %}
Forma alternativa (pero no es estilo python. Es estilo JS)
fuente
True and '' or 'a'
evaluará aa
, que no es lo que se pretendía.False
. Entonces, si escribes,'' or 'a'
Python responderá'a'
. Entonces, su comentario puede estar relacionado con Ruby, por ejemplo