核心数据关系和保存/获取

时间:2013-07-24 23:12:33

标签: ios objective-c core-data object-relationships

我对关于对象关系的核心数据机制感到有点困惑。

我有“帐户”模式和“信用卡”模式,我有两个问题:

  1. 如何设置从帐户到信用卡的一对多关系以及从信用卡到帐户的一对一关系?我很难弄清楚如何从XCode中的数据模型中设置它。
  2. 如果我的帐户模型具有信用卡属性(或NSSet,它看起来像),我设置该属性并保存帐户对象,如果与其关联的信用卡对象也被保存?或者需要单独保存吗?这样做的正确方法是什么?相反,在这种关系中获取对象的正确方法是什么,并在核心数据存储中修改和替换它们,而不是简单地插入?
  3. 我知道这些是非常基本的核心数据问题,所以请提前感谢您的耐心等待。

1 个答案:

答案 0 :(得分:1)

  1. 您需要阅读this guide。您可能应该将Xcode中的显示样式更改为基于表格而不是图表样式。

  2. 您不保存单个对象,而是将整个商店保存起来。因此,所有更改都会同时保存。

  3. 当你有一个有关系的对象时,它会作为一个集合呈现给你(NSSet如你所说)。您可以迭代该集以查找和修改目标对象,也可以过滤该集以查找特定对象。您还可以使用谓词运行获取请求以查找要修改的对象。有很多选择。