。 在appDelegate中,我创建了managedObjectContext等,并将ref传递给更新发生的detailviewcontroller。 我不知道这是否是问题的根源 - 任何人都可以请告知这个问题吗? 谢谢。当我尝试保存更新的managedobject时,更改不会持久保存到sqlite数据库,因此iOS核心数据管理对象更新不会持久保存到sqlite数据库
-(void)saveManagedObject:(id)sender
{
NSManagedObjectContext *context = [self managedObjectContext]; // this was passed earlier
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"jobDescription = %@", self.jobDescription.text ];
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Job" inManagedObjectContext:context];
[fetchRequest setEntity:entity];
[fetchRequest setPredicate:predicate ];
Job *reqJob = [[context executeFetchRequest:fetchRequest error:&error] lastObject];
[reqJob setSummary:self.summary.text];
if (![context save:&error]) {
NSLog(@"Error updating %@ - error:%@",self.detailItem.jobDescription, error);
}
}
实际上你是否需要获取或保存到核心数据中?什么是你的代码中的'Task'类?获取后,将它放入一个数组并检查数组是否有值? – 2012-03-28 14:17:52
嗨R.A.,在应用程序中,当我移动到另一条记录并再次返回时,记录对摘要的更新。但是,当我重新启动应用程序它没有被记录到sqlite。 – stan4th 2012-03-28 14:26:58
什么??我不明白。 – 2012-03-28 14:27:47