1

我之前问过一个关于在 ElementListViewController 中合并屏幕的问题,并找到了解决我的问题的方法,但现在我有了一个新问题:

我有促销和优惠券,它们是 Element 的子实体。

现在我想要 Deal 它是 Element 的子实体,但它是 Promotion 和 Voucher 的父实体。

所以我的 CoreData 模型改变了,我有了一个新版本。但我确信这会因为这个(来自Apple Doc)而崩溃:

但是,您不能合并实体层次结构;如果两个现有实体在源中不共享一个共同的父项,则它们不能在目标中共享一个共同的父项。

那么如何在不崩溃的情况下构建我的新应用程序呢?我是否必须做一个映射模型,仅此而已?还是我必须进行迁移?这个 Apple Doc 非常完整,但我不确定是否真的理解。

谢谢 !

4

1 回答 1

0

您需要进行手动迁移。我不知道这样做的正确方法是什么,但我以这种方式做过类似的事情——我创建新实体,并在自动迁移后进行自己的数据库更新,将记录从旧实体移动到新实体。不幸的是,数据模型中仍然有旧实体不再使用,这是坏事。

于 2012-05-16T11:58:07.363 回答