Django Academy · Lezione

Includere gli URL delle app e assegnare nomi alle route

Usi include() e assegni nomi alle route per reverse()

Lezione 4 di 413 passaggi

Includere gli URL delle app e assegnare nomi alle route è una lezione Django Academy gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Django Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Django Academy include 4 lezioni in totale.

Due livelli di URL

Django divide il routing tra urls.py del progetto e quello di ogni app. Il progetto include gli URL delle app per mantenere tutto ordinato.

Perché le app hanno il proprio urls.py

Dare a ogni app il proprio file degli URL mantiene le route riutilizzabili e autonome. Può aggiungere un'app a qualsiasi progetto in modo pulito.

Importare include

Per delegare il routing a un'app, utilizzi include. Lo importi insieme a path da django.urls nel file del progetto.

from django.urls import path, include

Configurare include()

Nel urls.py del progetto, colleghi un prefisso al modulo degli URL di un'app tramite include. Tutte le sue route saranno disponibili sotto quel prefisso.

path('blog/', include('blog.urls'))

Come si combinano i prefissi

Il prefisso del progetto si unisce alla route dell'app. Quindi blog/ più una route dell'app pari a post/ serve il percorso completo blog/post/.

Dare un nome a una route

Assegni a ogni route un nome, così non dovrà mai scrivere il relativo URL direttamente. Potrà fare riferimento alla route tramite questo nome stabile ovunque.

path('about/', views.about, name='about')

Perché i nomi sono meglio degli URL scritti direttamente

Se un URL cambia, i link scritti direttamente smettono di funzionare. Una route con nome consente di modificare il percorso una sola volta, mantenendo funzionanti tutti i link.

reverse() in Python

Utilizzi reverse per costruire un URL a partire dal nome di una route nel codice della vista. Django restituisce il percorso attuale associato a quel nome.

from django.urls import reverse
url = reverse('about')

app_name e namespace

Imposti app_name nel urls.py di un'app per creare un namespace per le sue route. I nomi avranno quindi la forma blog:detail, evitando conflitti tra app.

app_name = 'blog'

Fare riferimento alle route con namespace

Quando è impostato un namespace, faccia riferimento alle route nel formato namespace:name. In questo modo blog:detail e shop:detail restano chiaramente distinti.

reverse('blog:detail')

La scorciatoia redirect

L'helper redirect accetta anch'esso il nome di una route. Reindirizzi gli utenti usando il nome invece di un percorso letterale fragile.

from django.shortcuts import redirect
return redirect('about')

Verifica rapida

Ricordi cosa fa include() nel urls.py del progetto.

Riepilogo: includere e assegnare nomi

Utilizzi include per montare gli URL di un'app sotto un prefisso e assegni un nome alle route, così reverse e redirect continueranno a funzionare anche quando i percorsi cambiano. 🧭

Gratis per iniziare

Impara Python con un tutor IA — gratis

Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.

Corsi
30
Lezioni
120

Domande Frequenti

La lezione «Includere gli URL delle app e assegnare nomi alle route» è gratuita?

Sì — il testo completo di «Includere gli URL delle app e assegnare nomi alle route» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Django Academy, passa a CoddyKit PRO. Il corso Django Academy include 4 lezioni in totale.

Cosa imparerò in «Includere gli URL delle app e assegnare nomi alle route»?

Usi include() e assegni nomi alle route per reverse() Eserciti Django Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Django Academy?

Non è richiesta alcuna esperienza precedente. Django Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.

Quanto tempo richiede la lezione «Includere gli URL delle app e assegnare nomi alle route»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Django Academy?

Sì. Ogni lezione Django Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Scrivere una view basata su funzione
  2. Pattern URL con path()
  3. Catturare i parametri degli URL
  4. Includere gli URL delle app e assegnare nomi alle route
← Torna a Django Academy