Gestión de URLs en Django: Conceptos Básicos
En Django, las URLs son la forma en que el framework sabe qué vista debe cargar para una solicitud HTTP específica. Las URLs se definen en un archivo llamado urls.py, que se encuentra en la raíz de cada aplicación Django.
Conceptos básicos
Una URL en Django es un patrón que se utiliza para identificar una vista. El patrón puede ser tan simple como un nombre de ruta o tan complejo como una expresión regular.
Nombres de ruta
Los nombres de ruta son la forma más sencilla de definir una URL en Django. Un nombre de ruta es simplemente una cadena de texto que se utiliza para identificar una vista.
from django.urls import path
urlpatterns = [
path('home', views.home, name='home'),
]
En este ejemplo, la URL /home se asigna a la vista views.home. El nombre de ruta home se puede utilizar para referenciar esta vista en otros lugares, como en las plantillas o en el código de Python.
Expresiones regulares
Las expresiones regulares se pueden utilizar para definir URLs más complejas. Las expresiones regulares permiten que las URLs coincidan con patrones de texto más flexibles.
from django.urls import path
urlpatterns = [
path('blog/<slug:slug>', views.blog_post, name='blog_post'),
]
En este ejemplo, la URL /blog/<slug:slug> se asigna a la vista views.blog_post. La expresión regular <slug:slug> coincide con una cadena de texto que consta de cualquier número de caracteres alfanuméricos, separados por guiones bajos.
URLs con parámetros
Las URLs con parámetros permiten que las vistas reciban información adicional del usuario. Los parámetros se pasan a las vistas como argumentos.
from django.urls import path
urlpatterns = [
path('product/<int:product_id>', views.product_detail, name='product_detail'),
]
En este ejemplo, la URL /product/<int:product_id> se asigna a la vista views.product_detail. La expresión regular <int:product_id> coincide con un número entero. El número entero se pasa a la vista views.product_detail como el argumento product_id.
URLs de inclusión
Las URLs de inclusión permiten que una aplicación Django importe las URLs de otra aplicación. Las URLs de inclusión se utilizan a menudo para organizar las URLs de una aplicación en grupos lógicos.
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('blog.urls')),
]
En este ejemplo, la URL /admin/ se asigna a las URLs de la aplicación Django de administración. La URL / se asigna a las URLs de la aplicación blog.
Resumen
Las URLs son una parte fundamental de cualquier aplicación Django. En este tutorial, hemos aprendido los conceptos básicos de la gestión de URLs en Django.


