我的应用程序中有一个 iTunes 风格的界面:左侧的源列表 (NSOutlineView) 包含不同的库和播放列表,界面右侧的 NSTableView 显示“演示文稿”的信息。与 iTunes 类似,无论选择库还是播放列表(标题、作者、创建日期等),我都会在表格视图中显示相同类型的信息。
我目前有一个 NSArrayController 连接到我的 NSTableView 并根据源列表中选择的内容设置获取谓词。这在选择库时可以正常工作,因为我可以将获取谓词设置为按我的Presentation Core Data 实体中的“类型”字段进行过滤。但是,当我尝试调整播放列表的提取谓词时,似乎没有任何方法可以设置提取谓词,因为我在播放列表和演示文稿之间有一个表格来跟上播放列表中的顺序。根据 Apple 文档,这些类型的谓词不适用于 Core Data(它基本上没有多个内连接)。以下是我的数据模型的相关部分。
我的数据模型设置不正确吗?我应该放弃 NSArrayController 并手动处理连接 NSTableView 吗?我试图弄清楚是否有一个简单的修复,或者真的是一个设计缺陷。