核心数据遍历具有 NSArrayController 内容集的实体?
Posted
技术标签:
【中文标题】核心数据遍历具有 NSArrayController 内容集的实体?【英文标题】:Core Data traversing entities with an NSArrayController content set? 【发布时间】:2011-11-02 03:12:44 【问题描述】:我在 Core Data 应用程序中有 3 个实体:
Projeto > Servico > Sessao (这些关系像往常一样命名)。
Projeto.servico(对许多 Projeto --> Servico)
Servico.projeto(与一个 Servico--> Projeto 相反)
Servico.sessaoDoServico(对许多 Servico --> Sessao)
Sessao.servicoDaSessao(反一 Sessao --> Servico)
每个实体都连接到一个数组控制器,例如 Apple Docs 中的“部门和员工”。它在典型的 Master - details 配置中运行良好。
现在我想拥有来自选定项目的所有会话。 (我和 Sessao 和 Projeto 没有关系)
我正在尝试绑定 SessionArrayController 内容集以过滤会话,但没有成功。
我怎样才能拥有选定项目的所有会话?
我为会话类创建了一个属性,返回一个 NSSet,我可以打印所需的会话,但我不知道如何通过绑定来做到这一点。
-(NSSet *)sessoesDoProjeto
NSSet *allSessions = [self.projeto.servico valueForKey:@"sessaoDoServico"];
NSLog(@"allSessions %@",allSessions);
return allSessions;
我可以用上面的 NSSet 创建一个 NSArrayController 吗?
任何帮助将不胜感激
【问题讨论】:
【参考方案1】:我找到了解决方案,所以我为其他有同样问题的人发帖。
我将 SessionArrayController 的内容数组(不是内容集)绑定到:
ServicoArrayController_by_Project.arrangedObjects.@unionOfSets.sessaoDoServico
它就像一个魅力!
【讨论】:
以上是关于核心数据遍历具有 NSArrayController 内容集的实体?的主要内容,如果未能解决你的问题,请参考以下文章