2015-04-01 17 views
11

sto usando con Core Data MagicalRecord, il mio modello ha due configurazioni:Come "unire" le configurazioni dei Core Data?

enter image description here

PrefilledConfiguration ha quattro entità, UserDataConfigurations ha sei. Ora vorrei unirli tutti nella configurazione di default: qual è il modo migliore per farlo?

È necessaria una migrazione? Come posso trasferire tutti i dati esistenti nella configurazione nuova, unita (predefinita?)?

+0

Le tue entità appaiono in più configurazioni? –

+0

ogni entità è in PrefilledConfiguration o in UserDataConfiguration; nessuno di loro in entrambi – swalkner

+0

ho provato una cosa simile qualche tempo fa e non è riuscito. Dopo l'unione riuscita in alcune modifiche, il percorso di aggiornamento da una versione precedente era completamente interrotto. Non ha dato alcun errore, ma tutti i dati dell'utente erano spariti. Immagino che dovrai farlo a mano e sì, avrai bisogno di uno script di aggiornamento per migrare i dati. – dogsgod

risposta

0

È possibile provare a modificare manualmente il file xcdatamodel. All'interno del pacchetto è un semplice file XML. Questo è un esempio del mio test xcdatamodel:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<model userDefinedModelVersionIdentifier="" type="com.apple.IDECoreDataModeler.DataModel" documentVersion="1.0" lastSavedToolsVersion="7701" systemVersion="14D136" minimumToolsVersion="Automatic" macOSVersion="Automatic" iOSVersion="Automatic"> 
    <entity name="Entity" isAbstract="YES" syncable="YES"/> 
    <entity name="Event"> 
     <attribute name="timeStamp" optional="YES" attributeType="Date"> 
      <userInfo/> 
     </attribute> 
     <userInfo/> 
    </entity> 
    <configuration name="Test"/> 
    <elements> 
     <element name="Event" positionX="261" positionY="189" width="128" height="60"/> 
     <element name="Entity" positionX="261" positionY="198" width="128" height="45"/> 
    </elements> 
</model>