核心数据'修改'时间戳

时间:2011-12-09 12:01:58

标签: iphone objective-c ios ipad core-data

我正在尝试使用我的核心数据对象图设置自动“修改”时间戳。我使用以下代码在每个模型中使用它:

- (void)willSave
{
    NSDate *date = [NSDate date];
    [self setPrimitiveValue:date forKey:@"modified"];
    [super willSave];
}

但是,我希望这个修改日期能够冒泡对象图,依次更改每个父对象的修改日期。

所以,如果我有:祖父母 - (hasMany) - >>父 - (hasMany) - >>子和我更改Child的属性,父和祖父母修改的时间戳应该全部更新达到相同的价值。

有一种简单的方法吗?谢谢!

1 个答案:

答案 0 :(得分:1)

您可以注册NSManagedObjectContextObjectsDidChangeNotification通知。在它的userInfo中,您将获得更新,删除和插入的托管对象的列表。

下一步是迭代插入和更新的对象,然后内省对象(isKindOfClass,respondsToSelector,...)并为拾取的对象分配时间戳。

最佳,