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 características limitadas de una programación, como variables, bucles for, comentarios, extensiones, etc.
Este artículo gira en torno a cómo usar la etiqueta for en Plantillas. for tag se repite en cada elemento de una array, lo que hace que el elemento esté disponible en una variable de contexto.
Sintaxis
{% for i in list %} {% 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> {% endfor %} </ul>
para – Plantilla de Django Etiquetas Explicación
Ilustración de cómo usar para la etiqueta en las plantillas de Django usando un ejemplo. Considere un proyecto llamado geeksforgeeks
que tiene 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,
In 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), ]
Crear 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.
Cualquier cosa encerrada entre la etiqueta for se repetiría, la cantidad de veces que se ejecuta el bucle.
Uso avanzado
También se pueden usar variables. Por ejemplo, si tiene dos variables de plantilla, valorfila1 y valorfila2, puede alternar entre sus valores de esta manera:
html
{% for o in some_list %} <tr class="{% cycle rowvalue1 rowvalue2 %}"> ... </tr> {% endfor %}
Uso avanzado
Se puede recorrer una lista a la inversa usando {% for obj in list reversed %}
.
Si necesita recorrer una lista de listas, puede desempaquetar los valores de cada sublista en variables individuales. Por ejemplo, si su contexto contiene una lista de coordenadas (x, y) llamadas puntos, podría usar lo siguiente para generar la lista de puntos:
{% for x, y in points %} There is a point at {{ x }}, {{ y }} {% endfor %}
Esto también puede ser útil si necesita acceder a los elementos de un diccionario. Por ejemplo, si su contexto contenía datos de diccionario, lo siguiente mostraría las claves y valores del diccionario:
{% for key, value in data.items %} {{ key }}: {{ value }} {% endfor %}
¿Escribir código en un comentario? Utilice ide.geeksforgeeks.org , genere un enlace y compártalo aquí.
Publicación traducida automáticamente
Artículo escrito por NaveenArora y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA