plantillas - templates django python
¿Cómo puedo verificar el tamaño de una colección con las plantillas de Django? (5)
Tengo una lista en mi plantilla de Django. Quiero hacer algo solo si el tamaño de la lista es mayor que cero. ¿Cómo puedo verificar esto?
He intentado myList | length y myList | length_is pero no he tenido éxito. He buscado por todas partes y no veo ningún ejemplo.
Consulte https://docs.djangoproject.com/en/stable/ref/templates/builtins/#if : solo use, para reproducir su ejemplo:
{% if athlete_list %}
Number of athletes: {{ athlete_list|length }}
{% else %}
No athletes.
{% endif %}
Puedes probar con:
{% if theList.object_list.count > 0 %}
blah, blah...
{% else %}
blah, blah....
{% endif %}
Si está utilizando un Django reciente, la lista de cambios 9530 introdujo un bloque {% empty%}, lo que le permite escribir
{% for athlete in athlete_list %}
...
{% empty %}
No athletes
{% endfor %}
Útil cuando lo que desea hacer implica iterar sobre una lista no vacía.
Si probaste myList | length y myList | length_is y no obtiene los resultados deseados, entonces debes usar myList.count
Una lista se considera False
si no tiene elementos, por lo que puede hacer algo como esto:
{% if mylist %}
<p>I have a list!</p>
{% else %}
<p>I don''t have a list!</p>
{% endif %}