makemigrations e migrate a confronto
Scopra come Django pianifica e applica le modifiche allo schema
makemigrations e migrate a confronto è una lezione Django Academy gratuita su CoddyKit. Questa è la lezione 1 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 passaggi, non uno
Django modifica il database in due passaggi: prima scrive un piano, poi lo esegue. Sapere quale sia ciascun passaggio evita molta confusione. 🧭
makemigrations crea il piano
makemigrations esamina i modelli, individua le modifiche e scrive un file di migrazione che le descrive. Non modifica ancora il database.
python manage.py makemigrationsmigrate applica il piano
migrate prende i file di migrazione e li esegue effettivamente sul database, creando o modificando le tabelle reali.
python manage.py migratePerché separarli
Separare il piano dall'azione le permette di rivedere una modifica, salvarla in git e applicare esattamente gli stessi passaggi su ogni macchina e server.
Le migrazioni sono file
Ogni piano è contenuto in un file nella sua app, all'interno di migrations/. Salvi questi file nel repository, così i membri del team applicano modifiche identiche.
Un ciclo tipico
Modifichi un modello, esegua makemigrations per registrare la modifica, poi esegua migrate per applicarla. Questo ciclo costituisce il suo flusso di lavoro dello schema quotidiano.
Assegnare un nome alle migrazioni
Aggiunga un'etichetta chiara, così i file sembreranno una cronologia e non un insieme di numeri. Usi il flag --name per descrivere la modifica.
python manage.py makemigrations --name add_published_fieldSelezionare una sola app
Specifichi l'etichetta di un'app per generare o applicare le migrazioni solo per quella app, tenendo da parte le modifiche non correlate.
python manage.py makemigrations blogControllare senza modificare
Esegua makemigrations con --check in CI per interrompere la build se una modifica al modello non ha ancora una migrazione corrispondente.
python manage.py makemigrations --check --dry-runVedere cosa è stato applicato
Il comando showmigrations elenca tutte le migrazioni e contrassegna con una X quelle applicate, così può conoscere lo stato esatto.
python manage.py showmigrationsL'ordine è importante
Esegua sempre prima makemigrations e poi migrate. Eseguire solo migrate applica tutti i piani già esistenti, inclusi quelli integrati di Django.
Verifica rapida
Quale comando modifica effettivamente le tabelle del database?
Riepilogo
Ha imparato il ritmo: makemigrations scrive il piano, migrate lo applica. Prima pianifichi, poi applichi, e lo schema resterà sincronizzato ovunque. 🎉
Domande Frequenti
La lezione «makemigrations e migrate a confronto» è gratuita?
Sì — il testo completo di «makemigrations e migrate a confronto» è 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 «makemigrations e migrate a confronto»?
Scopra come Django pianifica e applica le modifiche allo schema 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 1 di 4.
Quanto tempo richiede la lezione «makemigrations e migrate a confronto»?
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
- makemigrations e migrate a confronto
- Leggere un file di migrazione
- Modificare un modello e migrare di nuovo
- sqlmigrate e ispezione dell'SQL