核心数据不会保存更改

用户名

我的代码有点问题,实际上我在使用RestKit在核心数据中映射各种对象,效果很好,然后我需要编辑某些对象,当我编辑它并保存上下文时,它们都非常有效很好,没有问题,麻烦是当我停止应用程序并再次打开它时,我所做的任何更改都没有保存,这是我的代码:

[managedObjectStore createPersistentStoreCoordinator];

NSString *storePath = [RKApplicationDataDirectory() stringByAppendingPathComponent:@"TaskModel.sqlite"];
NSString *seedPath = [[NSBundle mainBundle] pathForResource:@"RKSeedDatabase" ofType:@"sqlite"];
NSError *error;
NSPersistentStore *persistentStore = [managedObjectStore addSQLitePersistentStoreAtPath:storePath fromSeedDatabaseAtPath:seedPath withConfiguration:nil options:nil error:&error];
NSAssert(persistentStore, @"Failed to add persistent store with error %@", error);

//create the managed object contexts
[managedObjectStore createManagedObjectContexts];

//Configure a managed object cache to ensure we do not create duplicate objects
managedObjectStore.managedObjectCache = [[RKInMemoryManagedObjectCache alloc] initWithManagedObjectContext:managedObjectStore.persistentStoreManagedObjectContext];

然后这是我的更新方法:

// Get data
    // 1.- Create the request object:
    NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];

    NSManagedObjectContext *localContext = [RKManagedObjectStore defaultStore].mainQueueManagedObjectContext;
    // 3.- Define the type of managed object you need:
    NSEntityDescription *entity = [NSEntityDescription entityForName:@"SavedTask" inManagedObjectContext:localContext];
    [fetchRequest setEntity:entity];
    [fetchRequest setReturnsObjectsAsFaults:NO];
    NSPredicate *searchTasktoComplete = [NSPredicate predicateWithFormat:@"taskId == %@", self.task.taskId];
    [fetchRequest setPredicate:searchTasktoComplete];
    // 5.- Execute the request:
    NSError *error;
    NSArray *fetchedTasks = [localContext executeFetchRequest:fetchRequest error:&error];

    SavedTask *taskToComplete = [fetchedTasks objectAtIndex:0];

    //complete the task in core data
    NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
    [dateFormat setDateFormat:@"MM/dd/yyyy"];
    NSString *date = [dateFormat stringFromDate:[NSDate date]];
    [taskToComplete setRealDate:date];
    [taskToComplete setFollowUp:@"100"];
    [localContext refreshObject:taskToComplete mergeChanges:YES];
    [localContext save:&error];
    if (![localContext save:&error]) {
        NSLog(@"error");
    }

有人可以帮我吗?,在此先感谢

hackerinheels

您应该使用saveToPersistentStore方法

NSError *error = nil;
if(![localContext saveToPersistentStore:&error]){
    NSLog(@"Failed to save to data store");
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

核心数据阻止保存

来自分类Dev

核心数据保存关闭

来自分类Dev

与 Ensembles 同步核心数据:在本地模型更改之前不会拉下远程更改

来自分类Dev

SQLite与核心数据:保存大量数据

来自分类Dev

数据未保存到核心数据

来自分类Dev

核心数据使用Swift保存数据

来自分类Dev

SQLite与核心数据:保存大量数据

来自分类Dev

核心数据不会覆盖对象

来自分类Dev

核心数据保存时间过长

来自分类Dev

核心数据保存时间过长

来自分类Dev

核心数据未保存增量整数

来自分类Dev

核心数据无法正确保存

来自分类Dev

保存时的核心数据性能问题

来自分类Dev

核心数据未保存关系

来自分类Dev

将Int保存到核心数据

来自分类Dev

将图像保存到核心数据?

来自分类Dev

自定义UITableView单元格中的UILabel不会随着核心数据的更改而更新

来自分类Dev

核心数据:更改NSManagedObjectContextObjectsDidChangeNotification中的对象

来自分类Dev

强制NSPersistentContainer更改核心数据

来自分类Dev

核心数据-更改属性类型

来自分类Dev

在SwiftUI中将更改从加载的json文件保存到核心数据

来自分类Dev

核心数据正在保存托管对象,但在应用程序启动之间数据不会持久存在

来自分类Dev

核心数据正在保存托管对象,但在应用程序启动之间数据不会持久存在

来自分类Dev

重命名核心数据实体而不会丢失数据

来自分类Dev

无法将数据保存在核心数据中

来自分类Dev

如何更新核心数据并维护用户保存的数据?

来自分类Dev

核心数据获取请求不会返回不同的结果

来自分类Dev

无需迁移的核心数据更改数据模型

来自分类Dev

如何自定义保存在核心数据中?

Related 相关文章

热门标签

归档