我有两个关于使用Core Data的问题。以员工和部门的典型案例为例。 Employee实体有一个关系字段“deparment”as-one to Department,Department实体与Employee实体之间存在关系“employee”。
我想在部门名称的部分中显示TableView中的所有员工。我认为NSFetchedResultsController应该使用Employee作为实体。我不确定如何使用Department的名称作为排序标准,因为它是员工关系字段部门的名称。您可以使用“DepartmentName”作为排序并将其添加到Employee实体类作为返回给定员工的部门名称的方法吗?
第二个问题是部分名称。我想使用部门名称作为部分。我可以使用上面的方法作为NSFethedResultsController的sectionKeyPath值吗?
不确定我是否走在正确的轨道上。
答案 0 :(得分:3)
您可以将sort键设置为sectionKey的department.name以及sort。您甚至可以先按department.name排序,然后按员工姓名排序。
字符串“department.name”既可以用作NSSortDescriptor
中的排序键,也可以用作NSFetchedResultsController
构造中的节名称。
这是键值编码的一部分,强烈建议您阅读它,因为那里潜伏着很多力量和灵活性。