修改从NSFetchedResultsController获取的托管对象

时间:2010-12-10 08:22:21

标签: objective-c iphone cocoa core-data

我有一个简单的核心数据模型,它有两个实体,一个人和一个照片。人与照片有一对多的关系。一切正常,当我访问Person上的photoList属性时,我得到一个NSSet,上面包含该人的所有照片。

我的问题是,如何修改该集中的托管对象并将结果提交回核心数据后台?目前,如果我修改了集合中的一个Photo托管对象,则无法保存。

代码看起来像这样:

Person *myPerson = [fetchedResultsController objectAtIndexPath:indexPath];

[photosController setPhotos:[[myPerson photoList] allObjects]];

photosController获取的集合完全可读,但修改其内容不会更新后端存储。

感谢所有帮助

1 个答案:

答案 0 :(得分:1)

管理对象的更改仅保留在内存中,直到您save the managed object context个对象为止。完成后,更改将提交到持久性存储。