【问题标题】:MagicalRecord deleteObject not workingMagicalRecord 删除对象不起作用
【发布时间】:2014-06-10 02:45:00
【问题描述】:

代码如下:

[[NSManagedObjectContext MR_defaultContext] deleteObject:[self.fetchedResultsController objectAtIndexPath:indexPath]];
        NSError *error = nil;
        [[NSManagedObjectContext MR_defaultContext] save:&error];
        [self.collectionView reloadData];

当我删除一个对象时,集合视图会重新加载并且对象消失了。但是,下次我运行该应用程序时,该对象再次出现。我还需要做什么才能永久删除它?

编辑: 在 deleteObject 之后我也试过这个:

[[NSManagedObjectContext MR_defaultContext] MR_saveToPersistentStoreAndWait];

下次我运行应用程序时,该对象仍会显示。

【问题讨论】:

    标签: ios core-data magicalrecord


    【解决方案1】:

    试试:

    NSManagedObjectContext *context = [fetchedResultsController managedObjectContext];
    NSManagedObject *obj = [[fetchedResultsController fetchedObjects] objectAtIndex:index];
    [obj MR_deleteEntityInContext:context];
    [context MR_saveToPersistentStoreAndWait];
    

    【讨论】:

    • 请简要说明你的答案
    • 这似乎可行,谢谢。但是你能解释一下这与我所做的有什么不同以及为什么会这样吗?
    • 假设这会强制数据库立即完成删除,而不是在午休时间。
    猜你喜欢
    • 2016-08-14
    • 2016-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多