如何通过代码实现核心数据迁移



我目前正在通过代码进行迁移实验。只是为了了解引擎盖下发生了什么。

属性也可以。但不适用于恋爱关系。

这是我的代码:


// Mapping model
let model = NSMappingModel()
// Migration code for list (with items relationship One-To-Many)
let list = NSEntityMapping()
// ...

// Migration code for item (with list relationship One-To-One)
let item = NSEntityMapping()
// Migration of attributes: OK
item.attributeMappings = [ ]
// Migration of relationships: KO
let property = NSPropertyMapping()
property.name = "list"
property.valueExpression = NSExpression(format: """
FUNCTION($manager, "destinationInstancesForEntityMappingNamed:sourceInstances:" , "ItemV1ToItemV2", $source.list)
""")
item.relationshipMappings = [property]
// ...
return model // Used by NSMigrationManager.migrateStore(..)

所有内容都已迁移,映射工作正常,但关系会丢失。

谢谢你的帮助😁

自己找到了解决方案。

在CCD_ 3上需要CCD_ 1和CCD_。

最新更新