核心数据迁移一对多关系

时间:2011-11-10 18:28:25

标签: cocoa core-data core-data-migration mapping-model

最初模型就是这样,部门有一组工人:

Department <--->> Job
           <--->> Worker

并且需要进行更改,以便将Worker关系转移到相对于Jobs的位置,我想我需要这个:

Department <--->> Job <<--->> Worker

首先,这有意义吗?那么如果是这样,我该如何进行迁移呢?

所有文件的位置&amp;关于这些主题的例子?例如,映射模型中的值表达式,哪些表达式在那里有用?我想我可能必须在自定义映射中实现createRelationshipsForDestinationInstance:..方法,但几乎没有任何事情继续下去。这种方法的文档说“(重新)创建迁移对象之间的关系”,但毫无疑问,这样做有些棘手的细节,我还在猜测如何正确引用源代码和来源。目的地对象。

我几乎买了一本关于Core Data的书,但很幸运的是,从免费的摘录和源代码中可以看出,这个主题在那里也完全被掩盖了。有没有人知道一本书或指南,其中包括“从一个看起来像这样的模型迁移到一个看起来像这样的模型,做到这一点”的例子,这在某种程度上接近全面?

1 个答案:

答案 0 :(得分:1)

您可能希望将Worker直接链接到Department,这样您就可以在不通过Jobs的情况下访问它们。

也许是这样的:

Department <---->> Worker
           <---->> Jobs

Worker <<--->> Jobs

department.workers // department's workers
department.jobs    // department's jobs
worker.jobs        // worker's jobs
job.workers        // workers on a job

关于迁移,我不确定:)