1

假设我们有两种类型,HousePet。这些类型没有很多共同点,但它们都有一个owner. 所有者是 type Person

我不想同时拥有两者DogHouse从一个共同的超类型派生,因为据我所知,Core Data 不喜欢大型数据集(每个都有几十万)。如果这个假设不正确,请告诉我。

现在,由于 Core Data 不喜欢没有倒数的关系,因此Person需要Houses 和Dogs 的倒数。拥有两个独立的关系(即housesand dogs)似乎是显而易见的解决方案,但是一个人可以拥有很多很多不同的东西(为了这个问题,我们将动物视为事物。对不起,动物!)。

我想Person有一个单对多的关系possessions。Core Data 似乎无法做到这一点。Dog如果从一个共同的超类中继承和House继承不是一种选择,那么数十种关系(每种拥有一种关系)真的是要走的路吗?是否没有核心数据实体的协议之类的东西(所以它们都可以ownable)?对我来说,这似乎不是一个太奇特的用例。

我错过了什么吗?我大概是。告诉我什么,并赢得我的感激:)

4

1 回答 1

0

添加一个名为 的新实体ThingThing添加一个从到Person调用的一对一关系ownerPerson添加一个从to 到Thing被调用的一对多关系possessions。使它们彼此相反。

接下来,将你所有的东西变成Thing.

现在,所有事物共有的任何东西都进入Thing实体,并且Person可以拥有各种各样的财产。

于 2013-04-29T15:23:44.750 回答