Ho un'app per iPhone che utilizza i dati principali.Migrazione dei dati principali su più aggiornamenti di versione
Ho fatto un aggiornamento e ho utilizzato la migrazione leggera per passare da V1 a V2 del mio MOM (Managed Object Model). Questo ha funzionato perfettamente.
Cosa succede quando voglio andare a V3 (e oltre) della mia mamma?
- Se decido di continuare con leggero migrazione, si è trattare automaticamente con la migrazione da V1 a V3 e V2 a V3 di mia mamma, o devo fare qualcosa in più?
- Se decido di utilizzare un modello di mappatura, cosa succede? Come posso gestire l'aggiornamento di V1 e V2 da MOM a V3? Devo creare un modello di mappatura per V1 a V3 e V2 a V3?
- Questa domanda va oltre ... cosa succede quando ho V6 MOM e devo ancora supportare la possibilità di eseguire l'aggiornamento da un MOM V1?
Un'altra domanda è qual è il modo migliore per determinare la versione della MOM corrente? Dovrei usare isConfiguration: compatibleWithStoreMetadata:
Grazie per qualsiasi assistenza. Mi piacciono i Core Data. Ma a volte mi fa girare la testa e mi confondo, ed è per questo che cerco un po 'di saggezza.
Da un'occhiata più ravvicinata al documento Apple CoreDataVersioning.pdf, si afferma che il processo di migrazione "Prova a trovare un modello di mappatura che mappa dal modello a oggetti gestito per lo store esistente a quello in uso dal coordinatore di archivio permanente. " Ciò implica che ho bisogno di creare un numero crescente di modelli di mappatura per ogni giro del mio database. Quindi, per V3, avrei bisogno di un modello di mappatura da V1 a V3 e di un modello di mappatura da V2 a V3. Quindi, sono confuso dalla tua logica "fall through" e dal motivo per cui è necessaria. – thevoid
Hai provato se è sufficiente definire più modelli da migrare su più versioni? Penso che rimuoverò l'approccio fall-over di cui sopra, anche se non sono sicuro che sia necessario. –