首页 文章

如何使用NSSet正确编码核心数据

提问于
浏览
1

我在iOS编程和核心数据方面比较新,所以如果这是一个愚蠢的问题,请原谅我 . 在我的项目中,我有两个实体 . 实体(1)被命名为“医生”,实体(2)被命名为“患者” . 医生和患者之间的关系被命名为“患者” . 倒数称为“医生” . 我和医生之间有一对多的关系 . 这些实体已经分类 . 我有根视图控制器显示医生姓名 . 我希望能够选择医生的细胞并在受控制的视图控制器上显示他的病人 . 他的病人被纳入NSSet . 我在这里难过 . 我是否在segue代码中传递了NSSet,或者我是否在获取请求中使用谓词来仅获取适用的患者姓名?您可以提供的任何代码示例都将非常感激 .

1 回答

  • 1

    只需传递用户将单元格轻触到详细控制器时获得的 Doctor 对象 . 然后在详细控制器中使用 doctor.patients (NSSet) . 这是最简单的选项,如果你不是在表格视图中显示患者,那么你将需要使用 NSSortDescriptor 在显示患者之前组织患者(然后他们将在一个数组中,你使用 objectAtIndex: ) .

    如果您要更改数据,它仍然有效,但您需要以某种方式了解更改,以便更新UI .

    如果您已经有一个获取的结果控制器,那很好,并会监视您的更改 . 在这种情况下,使用谓词格式的 doctor

    [NSPredicate predicateWithFormat:@"doctor = %@", self.doctor];
    

    无论哪种方式,将医生对象传递给新的视图控制器 .

相关问题