【发布时间】:2013-05-06 07:47:09
【问题描述】:
我创建了一个新的核心数据模型版本。我所做的更改是添加了一个名为“FTASyncParent”的新实体,我将其设置为抽象实体。然后我将所有其他实体的父实体设置为抽象的“FTASyncParent”实体。所以现在在我的新模型中,我的所有实体都将“FTASyncParent”实体设置为父实体。
我从 Apple 的核心数据文档中了解到,轻量级迁移适用于实体层次结构的更改。但是,当我尝试执行轻量级迁移时,出现以下错误。
Error: Error Domain=NSCocoaErrorDomain Code=134110 "The operation couldn’t be completed. (Cocoa error 134110.)" UserInfo=0x1d9ccba0 {destinationRootEntity=FTASyncParent, reason=Cannot merge multiple root entity source tables into one destination entity root table, sourceRootEntities=(
Day,
MealItemFood
), NSUnderlyingException=Cannot merge multiple root entity source tables into one destination entity root table}
Day 和 MealItemFood 是我的数据模型中的一些实体,它们现在将“FTASyncParent”实体作为父实体。
如何解决此错误?如果我不能为此使用轻量级迁移,自定义映射模型映射应如何反映我的数据模型中的更改?
【问题讨论】:
-
在stackoverflow.com/q/8250975有更详细的说明来解决这个问题
标签: ios objective-c cocoa core-data core-data-migration