url – Etiqueta de plantilla de Django

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 programación, como variables, bucles for, comentarios, extensiones, URL, etc.
Este artículo trata sobre cómo usar la etiqueta de URL en Plantillas. urletiqueta Devuelve una referencia de ruta absoluta (una URL sin el nombre de dominio) que coincide con una vista dada y parámetros opcionales. Esta es una forma de generar enlaces sin violar el principio SECO al tener que codificar las URL en sus plantillas:

Sintaxis
{% url 'some-url-name' v1 v2 %}

El primer argumento es un nombre de patrón de URL. Puede ser un literal entrecomillado o cualquier otra variable de contexto. Los argumentos adicionales son opcionales y deben ser valores separados por espacios que se usarán como argumentos en la URL.

Ejemplo
{% url 'template1' %}

url – Plantilla de Django Etiquetas Explicación

Ilustración de cómo usar la etiqueta url en las plantillas de Django usando un ejemplo. Considere un proyecto llamado geeksforgeeksque 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 crea dos vistas a través de las cuales accederemos a la plantilla,
En geeks/views.py,

# import Http Response from django
from django.shortcuts import render
   
# create a function
def geeks_view(request):
    # return response
    return render(request, "geeks.html")
  
def nav_view(request):
    # return response
    return render(request, "nav.html")

Cree una ruta de URL para asignar a esta vista. Las URL deben tener un nombre que luego se pueda usar en plantillas y con la etiqueta de URL . en geeks/urls.py,

from django.urls import path
  
# importing views from views..py
from .views import geeks_view, nav_view
  
urlpatterns = [
    path('1/', geeks_view, name = "template1"),
    path('2/', nav_view, name = "template2"),
]

Ahora vamos a crear dos plantillas para demostrar ahora la etiqueta . Crear una plantilla en geeks.html,

<html>
<h1>Template 1</h1>
<!-- Link to template 2 -->
<a href = "{% url 'template2' %}">Go to template 2</a>
</html>

Crear una plantilla en geeks.html,

<html>
<<h2>Template 2</h2>
<!-- Link to template 1 -->
<a href = "{% url 'template1' %}">Go to template 1</a>
</html>

Ahora visite http://127.0.0.1:8000/1 ,

url-django-template-tags
Click on the link and it will redirect to other url.

url-djago-templtae-tags

Uso avanzado

Suponga que tiene una vista, app_views.client , cuya URLconf toma una ID de cliente (aquí, client() es un método dentro del archivo de vistas app_views.py). La línea URLconf podría verse así:

path('client/<int:id>/', app_views.client, name='app-views-client')

Si la URLconf de esta aplicación se incluye en la URLconf del proyecto en una ruta como esta:

path('clients/', include('project_name.app_name.urls'))

… luego, en una plantilla, puede crear un enlace a esta vista como este:

{% url 'app-views-client' client.id %}

La etiqueta de la plantilla generará la string /clients/client/123/.

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 *