0

我有以下数据模型来管理测量(心率和皮肤反应) 在此处输入图像描述

当我获得新的测量值时,它将成为“MinuteStress”的实体现在我想以编程方式检查是否存在相应的日期和月份实体,如果不存在则自动创建一个并将我的测量值添加到它们的平均值中。

我的第一个问题是:检查超级实体的正确位置在哪里?在“MinuteStress”的 NSManagedObjectSubclass 中这样做是个好主意,还是在我的视图控制器中创建实体后这样做更好?

我的第二个问题是,是否有一种聪明的方法可以从子实体创建超级实体?

4

1 回答 1

0

理论上你可以在awakeFromInsert你的子类的方法中做到这一点NSManagedObject,但这是一个坏主意(tm),因为你可以触发其他核心数据事件......有关更多信息,请参阅Apple DocsawakeFromInsert下的“特殊注意事项”部分。

您最好在视图控制器中查询超类并在需要时创建它们,然后创建 MinuteStress 实例。

您可能还想编写一些方便的方法来创建相关的子对象(例如-(DayStress *) createDayStress]在 MonthStress 上),您可以在其中创建子对象并在返回之前自动设置其父引用(以及任何初始化值)。它使视图控制器中的代码流更好地 IMO。

于 2013-04-19T20:20:56.837 回答