Progetti e app
Fa parte della sezione Fondamenti di Django del percorso Django di Coddy. Lezione 4 di 23.
L’app del menu ha una nuova pagina Orari di apertura in menu/urls.py, ma /hours/ mostra Pagina non trovata, perché il progetto non legge mai quel file.
Un progetto Django è l’intero sito: mysite/ contiene le sue impostazioni e il suo URLconf principale. Un’applicazione è una parte del sito con le proprie viste e i propri URL, in questo caso menu/. Sul tuo computer, python manage.py startapp menu ne crea una.
Il progetto passa una parte dell’indirizzo all’app con include():
from django.urls import include, path
urlpatterns = [
path("shop/", include("shop.urls")),
]Django confronta l’inizio dell’indirizzo, shop/, poi passa il resto a shop/urls.py. La sua route "cart/" si trova quindi in /shop/cart/. Il prefisso può essere qualsiasi testo, anche vuoto.
Sfida
FacileFai in modo che il progetto affidi i suoi indirizzi all'app del menu.
- In
mysite/urls.py, importaincludeaccanto apath. - Sostituisci le due route con un'unica route che includa
menu.urls. Assegna un prefisso vuoto,"", così/e/about/restano dove sono.
Apri /hours/ e /about/: funzionano ancora entrambe.
Provalo tu
from django.urls import path
from menu import views
urlpatterns = [
path("", views.home),
path("about/", views.about),
]
Tutte le lezioni di Fondamenti di Django
Esercitati da solo: Playground Django