0
如何更新核心数据实体,需要采取哪些操作?我有一个Store
,与Product
有一对多的关系。当我对产品进行更改时,请删除一个或添加,然后是否需要执行任何操作,例如调用某些方法?或者我只是编辑产品并让它们保持独立,然后在用户退出应用程序时将它们保存到持久性存储中?这是正常的方式吗?更新核心数据实体
如何更新核心数据实体,需要采取哪些操作?我有一个Store
,与Product
有一对多的关系。当我对产品进行更改时,请删除一个或添加,然后是否需要执行任何操作,例如调用某些方法?或者我只是编辑产品并让它们保持独立,然后在用户退出应用程序时将它们保存到持久性存储中?这是正常的方式吗?更新核心数据实体
你必须拯救它们是持续性 - 见Managed Object Context in the Core Data Programming Guide from Apple:
除非你确实保存这些更改,但是,持久性存储器保持不变。
所以这里是代码
NSError *error = nil;
BOOL savedSuccessfully = [self.managedObjectContext save:&error];
if (!savedSuccessfully) {
NSLog(@"Could not save date change! Reason : %@", [error localizedDescription]);
}
您应经常保存并不仅退出应用程序时。看到这个答案:How often should I save to Core Data?
当我做了更改产品,删除一个或补充,我需要做任何事情再比如调用一些方法?
这取决于您在核心数据模型中的实体中设置的删除规则。
只能部分回答我所有的问题 – LuckyLuke
因此,每次进行更改时,您都需要在上下文对象中调用'save'?您不要依赖用户关闭应用程序时发生的保存上下文。 – LuckyLuke
但该代码已添加到应用程序委托中。在应用程序中传播保存上下文是否正常? – LuckyLuke