for … bucle vacío – Plantilla Django Tags

Una plantilla de Django es un documento de texto o una string de Python marcada con el lenguaje de plantillas de Django. Django, al ser un poderoso marco de trabajo incluido en las baterías, brinda comodidad para representar datos en una plantilla. Las plantillas de Django no solo permiten pasar datos de la vista a la plantilla, sino que también proporcionan algunas funciones limitadas de una programación, como variables, bucles for, comentarios, extensiones 
, etc. for tag se repite en cada elemento de una array, lo que hace que el elemento esté disponible en una variable de contexto. La etiqueta for puede tomar una cláusula opcional {% vacío %} cuyo texto se muestra si la array dada está vacía o no se pudo encontrar. Esto se usa básicamente como una condición a seguir para verificar si el conjunto de consultas está vacíoy qué acción se va a realizar en el mismo escenario.
 

Sintaxis: 

{% for i in list %}
// Do this in non - empty condition
{% empty %}
// Do this in empty condition
{% endfor %}

Ejemplo:
Por ejemplo, para mostrar una lista de atletas proporcionada en lista_de_atletas:

html

<ul>
{% for athlete in athlete_list %}
    <li>{{ athlete.name }}</li>
{% empty %}
    <li>Sorry, no athletes in this list.</li>
{% endfor %}
</ul>

Lo anterior es equivalente a, pero más corto, más limpio y posiblemente más rápido que lo siguiente: 

html

<ul>
  {% if athlete_list %}
    {% for athlete in athlete_list %}
      <li>{{ athlete.name }}</li>
    {% endfor %}
  {% else %}
    <li>Sorry, no athletes in this list.</li>
  {% endif %}
</ul>

para … vacío – Plantilla de Django Etiquetas Explicación

Ilustración de cómo usar para… una etiqueta vacía en las plantillas de Django usando un ejemplo. Considere un proyecto llamado geeksforgeeks que tenga una aplicación llamada geeks. 

Consulte los siguientes artículos para comprobar cómo crear un proyecto y una aplicación en Django. 

Ahora cree una vista a través de la cual pasaremos el diccionario de contexto, 
en geeks/views.py, 

Python3

# import Http Response from django
from django.shortcuts import render
 
# create a function
def geeks_view(request):
    # create a dictionary
    context = {
        "data" : [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
    }
    # return response
    return render(request, "geeks.html", context)

Cree una ruta de URL para asignar a esta vista. En geeks/urls.py,

Python3

from django.urls import path
 
# importing views from views.py
from .views import geeks_view
 
urlpatterns = [
    path('', geeks_view),
]

Crea una plantilla en templates/geeks.html, 

html

{% for i in data %}
    <div class="row">
        {{ i }}
    </div>
{% endfor %}

Verifiquemos lo que se muestra en «/» en la plantilla. 

cycle-django-template-tags

Cualquier cosa encerrada entre la etiqueta for se repetiría, la cantidad de veces que se ejecuta el ciclo.
Ahora pasemos una array vacía y usemos una etiqueta vacía junto con una etiqueta for. 
En geeks/views.py, 

Python3

# import Http Response from django
from django.shortcuts import render
  
# create a function
def geeks_view(request):
    # create a dictionary
    context = {
        "data" : [],
    }
    # return response
    return render(request, "geeks.html", context)

Ahora en templates/geeks.html, 

html

{% for i in data %}
    <div class="row">
        {{ i }}
    </div>
    {% empty %}
    <h4>There is nothing in this list</h4>
{% endfor %}

Ahora, revisa http://127.0.0.1:8000/

for-empty-django-template-tags

Publicación traducida automáticamente

Artículo escrito por NaveenArora y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *