tly*_*lex 5 core-data objective-c core-data-migration
我一直在努力让核心数据轻量级迁移工作。遇到了一个非常棘手的问题。我已经像文档和其他SO 帖子一样设置了自动轻量级迁移。然后我创建一个新版本,选择它作为当前版本,向某个实体添加一个新字段,然后运行。有错误:
迁移失败,错误为 Error Domain=NSCocoaErrorDomain Code=134140 “操作无法完成。(Cocoa 错误 134140。)” UserInfo=0xce08c10 {reason=无法找到或自动推断迁移的映射模型,
还有一个错误:
Run Code Online (Sandbox Code Playgroud)NSUnderlyingError = "Error Domain=NSCocoaErrorDomain Code=134190 \"The operation couldn\U2019t be completed. (Cocoa error 134190.)\" UserInfo=0xcdf2d00 {reason=Each property must have a unique renaming identifier}";
我在谷歌上搜索了一段时间“每个属性必须有一个唯一的重命名标识符”,但根本没有找到任何结果。
根据此错误消息的含义,属性应该具有唯一的重命名标识符。我回到我的模型设置,发现我确实有一些完全相同的重命名标识符。
我的问题是我根本没有真正改变模型名称。我只是添加了一个新字段。我认为重命名标识符仅在尝试重命名某些内容时才有用。或者也许无论如何都需要它。如果是这样,那么为什么 XCode 不给我们任何警告或错误呢?XCode 看不应该很明显吗?
欢迎任何建议。
小智 5
回答一个过去的帖子,但你不是唯一遇到这个无法找到或自动推断迁移问题的映射模型的人。
所以,我遇到了同样的问题,在一个有 12 个模型版本的大项目中,只有轻量级迁移。刚刚重命名了 2 个属性,直到今天一切正常。
我发现的唯一解决方法是在我的最后两个模型版本之间向我的项目添加映射模型(新文件 => 核心数据 => 映射模型)。我希望我不必为每个新模型更新添加一个。对我来说似乎是 Core Data 中的一个迁移错误。
希望这会帮助其他人在这个错误中挣扎。
但发生在 iOS 8 / iOS 9 设备上
| 归档时间: |
|
| 查看次数: |
849 次 |
| 最近记录: |