0

我有一个使用核心数据的应用程序。其模型有 3 个实体,全部通过 1-many 关系连接,如下所示:

|E1|<-->>|E2|<-->>|E3|

我的 UI 本质上是一个 3 向垂直拆分窗格,每个窗格中都有一个 tableview。它的工作方式是我让每个窗口递增 1 层,基本上允许用户从 E1 对象“向下钻取”到 E3 对象,所有通过关系链接,类似于 OSX finder 中的选项。

每个表都由 NSArrayController 填充,从相关实体获取数据,以及在前一个“向下钻取”窗口中选择的数据。如果我只是将一个按钮连接到数组控制器的 addObject 方法,这一切都很好,但是它创建的新对象是一个空白行,我必须手动填写。

我已经连接了添加按钮来打开一个“打开对话”,它允许用户选择文件。然后我遍历返回的 NSURL 数组,并将文件信息添加到核心数据模型的 E3 实体中。我调用了保存,但 UI 中没有显示任何内容。我猜这与我添加的对象无法知道它属于哪个 E2 的事实有关,因此没有显示。

有没有办法通过关系将对象添加到核心数据模型中?例如,我可以看到在 E2 中选择了哪个对象,然后添加与此有关系的对象。我希望我已经说得够清楚了。欢迎任何想法或建议!

4

1 回答 1

0

我通过创建一个对象、设置它的属性、然后在数组控制器上调用 addObject:id 来对此进行排序。

希望这可以帮助某人。

于 2013-02-11T13:31:05.393 回答