Domanda

Ho più migrazioni nel mio progetto, ogni migrazione aggiunge un numero di colonne. Dopo ogni migrazione, voglio riempire i dati nelle colonne, in base alle altre colonne già esistenti. Lavoro in una squadra e ognuno di noi dispone di un database locale con dati di prova.

Attualmente c'è un singolo metodo di semina nella classe di configurazione.

Con una migrazione che aggiunge colonne, aggiungendo dati nel metodo di semina va bene, ma con più migrazioni in cui ognuna delle quali aggiunge colonne, non funzionerà a meno che non aggiorni il metodo di seme per abbinare la migrazione più recente. Perché non includono un metodo di semi virtuale o astratto per le persone per sovrascrivere quando necessario nella classe Dbmigration?Questo sembrerebbe un modo molto migliore?

Grazie in anticipo

È stato utile?

Soluzione

Poiché puoi seminare i tuoi dati direttamente nel metodo Up nella classe di migrazione.Basta chiamare:

Sql("INSERT INTO ... ");
Sql("UPDATE ... ");
.

Il metodo Seed nella configurazione della migrazione è più adatto per la semina del database iniziale quando viene creato il database, ma può essere utilizzato anche per i semi imminenti quando è necessario aggiungere o aggiornare intere entità - non solo inizializzare le colonne.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top