Esaminare e modificare gli script generati
Corregga le migrazioni generate automaticamente prima di applicarle.
Esaminare e modificare gli script generati è una lezione Flask 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 Flask Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Flask Academy include 4 lezioni in totale.
La generazione automatica non è perfetta
La generazione automatica è un’ottima prima bozza, non una risposta definitiva. Review dello script sempre prima di applicarlo in qualsiasi ambiente. 🔍
Aprire il file delle versioni
Ogni script si trova nella cartella versions. Aprirlo e leggere le funzioni upgrade e downgrade come qualsiasi altro codice.
L’oggetto op
All’interno delle funzioni si trovano chiamate sull’oggetto op, come op.create_table e op.add_column, ognuna delle quali descrive una modifica dello schema.
op.add_column("user", sa.Column("age", sa.Integer()))Ciò che Alembic non rileva
La generazione automatica spesso non rileva i renames, interpretandoli come un’eliminazione seguita da un’aggiunta. Questo eliminerebbe silenziosamente i dati della colonna.
Correggere manualmente i rename
Quando una colonna viene davvero rinominata, sostituire l’eliminazione e l’aggiunta con un singolo alter_column che conservi i dati.
op.alter_column("user", "name", new_column_name="full_name")Controllare downgrade
Verificare che downgrade annulli davvero upgrade. Un downgrade non funzionante lascia bloccati se in futuro fosse necessario eseguire il rollback.
Prestare attenzione alle colonne NOT NULL
L’aggiunta di una colonna non nullable a una tabella che contiene righe fallirà. Aggiungerla prima come nullable, compilare i valori e poi renderla required.
Aggiungere personalmente i passaggi sui dati
È necessario riempire dei valori esistenti? Aggiungere una chiamata op.execute con SQL grezzo tra i passaggi dello schema per migrare i dati esistenti in sicurezza.
op.execute("UPDATE user SET age = 0")Testare prima su una copia
Prima di intervenire sulla produzione, eseguire la migrazione su una copy dei dati reali. In questo modo gli errori emergono quando è ancora facile correggerli.
Una modifica per migrazione
Mantenere ogni migrazione focused su una singola modifica logica. Gli script piccoli sono molto più semplici da esaminare, testare e annullare correttamente.
Eseguire il commit dello script finale
Una volta modificato e testato, eseguire il commit dello script. Non modificare mai una migrazione già distribuita nella cronologia di produzione.
Verifica rapida
È stata rinominata una colonna, ma la generazione automatica ha scritto un’eliminazione e un’aggiunta. Qual è il rischio?
Riepilogo
Si è imparato a esaminare gli script generati, correggere i rename con alter_column, gestire le colonne non nullable e testare prima del rilascio. 🎉
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 «Esaminare e modificare gli script generati» è gratuita?
Sì — il testo completo di «Esaminare e modificare gli script generati» è 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 Flask Academy, passa a CoddyKit PRO. Il corso Flask Academy include 4 lezioni in totale.
Cosa imparerò in «Esaminare e modificare gli script generati»?
Corregga le migrazioni generate automaticamente prima di applicarle. Eserciti Flask 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 Flask Academy?
Non è richiesta alcuna esperienza precedente. Flask 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 «Esaminare e modificare gli script generati»?
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 Flask Academy?
Sì. Ogni lezione Flask 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
- Perché servono le migrazioni, non create_all
- Inizializzare e generare automaticamente una migrazione
- Applicare e annullare modifiche con upgrade
- Esaminare e modificare gli script generati