使用 CoreData 保存“数据会话”

Posted

技术标签:

【中文标题】使用 CoreData 保存“数据会话”【英文标题】:Saving "data sessions" with CoreData 【发布时间】:2016-02-08 19:12:47 【问题描述】:

我正在编写一个应用程序来跟踪患者在轮班期间看到的情况。现在,我有一个应用程序,其中包含一个可以添加患者的列表,每个都由不同的 NSManagedObject 表示,每个对象都有一个名称、房间号和需要处理的几个护理方面(考试、实验室、成像等,每个都有“待完成”、“进行中”或“完成”的状态)。使用 CoreData,我可以保存护理方面的饮食状态和特定的患者数据,并在每次应用程序启动时重新加载。然而,下一步是整合一个“班次”,用户可以从一个空列表开始他或她的班次,并只添加在该班次中看到的那些患者。当班次结束时,他们可以保存该列表,以便稍后加载它并查看他们在该特定班次中看到的人,但也可以使用完全独立的列表开始新班次。有什么方法可以独立保存这些班次列表,以便以后单独调出?

【问题讨论】:

【参考方案1】:

听起来您想在数据模型中创建一个新的Shift 实体,并与您当前的患者实体建立关系。 Shift 将有一个名为 patients 的关系,该关系导致患者实体。这将是一对多的关系,因为每个班次都有多名患者。患者实体将具有称为 shiftshifts 的反向关系,具体取决于每个患者实例是仅属于一个班次还是属于多个班次。

稍后您可以查找Shift 的现有实例或创建新实例。

【讨论】:

以上是关于使用 CoreData 保存“数据会话”的主要内容,如果未能解决你的问题,请参考以下文章

即使验证失败,Core Data 也会保存对象

使用 RSAPI 将 JSON 保存到 Core Data

在 NSAttributedString 中添加图像并保存到 Core Data 性能

如何在 Core Data 中保存用户偏好?

Swift 3 Core Data - 无法保存关系值

如何在 Swift 中的 Core Data 中保存多个项目