核心数据“修改”时间戳
Posted
技术标签:
【中文标题】核心数据“修改”时间戳【英文标题】:Core Data 'modified' timestamp 【发布时间】:2011-12-09 12:01:57 【问题描述】:我正在尝试使用我的核心数据对象图设置一个自动“修改”时间戳。我已经使用以下代码在每个模型中工作:
- (void)willSave
NSDate *date = [NSDate date];
[self setPrimitiveValue:date forKey:@"modified"];
[super willSave];
但是,我希望这个修改日期能够冒泡对象图,依次更改每个父对象的修改日期。
所以如果我有:祖父母--(hasMany)-->>父母--(hasMany)-->>孩子并且我更改了孩子的属性,父母和祖父母修改的时间戳都应该更新为相同的值.
有没有简单的方法来做到这一点?谢谢!
【问题讨论】:
【参考方案1】:您可以注册 NSManagedObjectContextObjectsDidChangeNotification 通知。在它的 userInfo 中,您会获得更新、删除和插入的托管对象的列表。
下一步将遍历插入和更新的对象,然后内省对象(isKindOfClass、responsToSelector、...)并为拾取的对象分配时间戳。
最好的,
【讨论】:
您能否详细说明您是如何遍历父对象来更新时间戳的?以上是关于核心数据“修改”时间戳的主要内容,如果未能解决你的问题,请参考以下文章