我之前问过一个关于在ElementListViewController中合并屏幕问题的问题,并找到了我的问题的解决方案,但现在我有一个新问题:
我有推广和优惠券,这是元素的子实体。
现在我想要Deal是Element的子实体,但它是Promotion和Voucher的父级。
所以我的CoreData模型已更改,我有一个新版本。但我确信这会因此而崩溃(来自Apple Doc):
但是,您无法合并实体层次结构;如果两个现有实体不在源中共享公共父级,则它们不能在目标中共享公共父级。
那么如何构建我的新应用程序而不会崩溃? 我是否必须做一个映射模型,这就是全部?或者我是否必须进行迁移? 这篇Apple Doc非常完整,但我不太清楚。
谢谢!
答案 0 :(得分:0)
您需要进行手动迁移。 我不知道这样做的正确方法是什么,但我用这种方式做了类似的事情 - 我创建了新的实体,在自动迁移后,我自己进行数据库更新,将记录从旧实体移动到新实体。遗憾的是,数据模型中仍有旧实体不再使用,这就是坏事。