用核心数据(Mac OS X 可可)对 _ordered_ 项目列表建模的最佳方法是啥?

Posted

技术标签:

【中文标题】用核心数据(Mac OS X 可可)对 _ordered_ 项目列表建模的最佳方法是啥?【英文标题】:What's the best way to model _ordered_ lists of items with core data (Mac OS X cocoa)?用核心数据(Mac OS X 可可)对 _ordered_ 项目列表建模的最佳方法是什么? 【发布时间】:2009-05-04 02:05:36 【问题描述】:

用核心数据对有序项列表建模的最佳方法是什么?

【问题讨论】:

这里很好地讨论了实现这一目标的一种方法:***.com/q/1082137/105717 【参考方案1】:

从 OS X 10.6 开始,在 Core Data 中没有自动维护有序的多对多关系的方法。您必须将“索引”属性添加到一对多关系的目标并手动维护此索引或维护从对象 ID 到具有有序对多关系的实体中的索引的映射。实际上,通过覆盖 KVC 排序到多个访问器和设置器方法来实现这些选项中的第一个并不难。您还可以在父实体上创建一个 fetched 属性,以便通过将排序描述符添加到 fetched 属性的 fetch 谓词来更轻松地(只读)访问有序列表。

【讨论】:

过去我在父实体中使用 KVO 在添加或删除对象时使订单号保持最新。【参考方案2】:

如果您的目标是 Lion 或更新版本,您可以直接在数据建模器中创建有序对多关系。那些使用NSOrderedSet 类。

【讨论】:

以上是关于用核心数据(Mac OS X 可可)对 _ordered_ 项目列表建模的最佳方法是啥?的主要内容,如果未能解决你的问题,请参考以下文章

使用可可获取 Mac OS X 当前连接的 wifi 网络的安全类型

如何在 Mac Os X 中向我的可可应用程序的屏幕添加信息

如何让 Mac OS X 上的可可 emacs 加载新窗口的 .emacs 可视化自定义(第一个之后打开的任何文档)?

可可豆荚在 Mac OS Monterey 上不起作用

如何开始在 mac os 的可可应用程序中处理标签?

用 C/C++ 包装 Mac OS X 特定代码的宏