Anteriormente hemos ido incluyendo las rutas en el archivo urls.py
de la carpeta principal donde esta nuestro proyecto que es mysite
. Pero sucede que cuando aumente el número de APPs que tengamos y no solo esté myapp
, se irán acumulando muchas rutas o URLs a las que queramos ir, por lo que es mejor que cada APP tenga su propio archivo conteniendo las URLs propias de esa APP.
Ahora tendremos un archivo urls.py
en cada APP que tengamos, más el archivo urls.py
de la carpeta principal del proyecto que es mysite
. Veamos cómo quedan ambos ficheros.
mysite/urls.py
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('myapp.urls')),
]
Además de importar el método path
importamos también el método include
que es el que nos permite luego incluir las rutas que se indiquen include('myapp.urls')
Cuando colocamos un string vacío ('') en la línea path('', include('myapp.urls'))
indica que antes de las urls a las que estamos haciendo referencia no va nada.
Si en lugar de poner un string vacío pusiera algo, por ejemplo 'home/' lo que sucedería es que ahora sería necesario poner esto para visitar las rutas que se referencian en myapp. Si hicieramos esto las rutas raiz y about serían así:
- http://127.0.0.1:8000/home/
- http://127.0.0.1:8000/home/about
myapp/urls.py
from django.urls import path
from . import views
urlpatterns = [
path('', views.hello),
path('about/', views.about),
]
Escribimos el punto después de from para indicar que views está en el mismo directorio que en el que estamos que es myapp
.
Podemos reestablecer el servidor y ver que las rutas raiz y about funcionan bien, igual que antes.
No hay comentarios:
Publicar un comentario