我有两个关于使用 Core Data 的问题。以员工和部门的典型案例为例。 Employee 实体具有与 Department 一对一的关系字段“department”,而 Department 实体具有与 Employee 实体一对多的关系“employee”。
我想在 TableView 中按部门名称部分显示所有员工。我认为 NSFetchedResultsController 应该使用 Employee 作为实体。我不确定如何使用部门名称作为排序标准,因为它位于员工关系字段部门的名称中。您可以使用“DepartmentName”作为排序并将其添加到 Employee 实体类作为返回给定员工的部门名称的方法吗?
第二个问题是章节名称。我想使用部门名称作为部分。我可以使用上述方法作为 NSFethedResultsController 的sectionKeyPath 值吗?
不确定我是否走在正确的道路上。
最佳答案
您可以将sectionKey 的排序键设置为department.name 以及排序。您甚至可以先按部门名称排序,然后再按员工姓名排序。
更新
字符串“department.name”既可以用作 NSSortDescriptor
中的排序键,也可以用作 NSFetchedResultsController
构造中的部分名称。
这是《键值编码》的一部分,强烈建议您阅读它,因为其中蕴藏着强大的功能和灵 active 。
关于iphone - 核心数据 : Sort and Section on Relationships,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2467575/