试图掌握核心数据中的关系

时间:2013-10-04 16:19:46

标签: ios xcode core-data entity relationship

我正在尝试了解核心数据关系。我有两个实体。一个名为驱动程序,其中包含(汽车司机)姓名,年龄,性别。另一个实体叫做汽车,它有汽车品牌,型号等。

许多汽车有一个驱动程序汽车驱动程序存在反比关系(如果我没记错的话)

我为每个实体创建 NSManagedObject 的子类..然后我尝试设置值,然后执行。

一些伪代码:

Driver *thisDriver = [NSEntityDescription ...
Car *thisCar= [NSEntityDescription ...
[thisCar setMake@"ford"];
// etc..

[thisDriver setName:@"bob"];
// etc..
[thisDriver setCar:thisCar];  // THIS PART NO GOOD =(

我注意到 thisCar 中有一个方法“ setCar ”,它接受了一个驱动变量.. 从孩子那里设置父母而不是相反的方式似乎很奇怪。我有意义的是,我在 NSSet 中创建了许多 Car 的匿名实例,然后将它们存储到驱动程序中..然后除此之外。

此外,当我获取驱动程序时...如何获取所有关联的汽车?我可以获取汽车,并获取驱动程序,但不是相反...

也许我在传统数据库方面考虑太多,你使用外键来获取相关表的所有记录?它应该非常相似,对吧?

this is how my core data looks.  not my screenshot though

1 个答案:

答案 0 :(得分:0)

所以听起来你想要一个司机有多辆车,这意味着你需要驾驶员和汽车之间的很多关系。然后你就可以做到这样的事情:

[myDriver addCarObject:newCar];