核心数据实体布尔属性未保存在表格单元格删除中

Posted

技术标签:

【中文标题】核心数据实体布尔属性未保存在表格单元格删除中【英文标题】:Core Data Entity Boolean property does not get saved on Table Cell delete 【发布时间】:2013-12-12 06:01:41 【问题描述】:

我在 RestKit 0.20 的帮助下设置了 Core Data,因此数据存储在设备上,而不是内存中。 从响应中保存新实体以及在成功块中设置和保存属性都有效。 但是,当我尝试设置 Bool 属性并将其保存在

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath ...
      Issue *issue = [self.fetchedResultsController objectAtIndexPath:indexPath];
    issue.toDelete = YES;
    [issue setHasBeenDeleted:[NSNumber numberWithBool:YES]];
    [self.managedObjectContext saveToPersistentStore:nil];
...

它不会被刷新到磁盘。当我关闭应用程序时它会这样做。 我尝试同时使用 main 和 child managedObjectContext,但结果是一样的。 可能出了什么问题?

【问题讨论】:

我刚刚创建了名为“dummy”的虚拟属性,并且确实得到了保存。将创建另一个 Bool 属性并查看会发生什么。 您是否将其设置为瞬态? 不,它只是被检查为“可选” 可能与元数据有关。当我设置默认值时,我曾经有过类似的行为。 【参考方案1】:

我通过引入名为“deletedFromLibrary”的新 Bool 属性解决了一个问题。只要在使用“hasBeenDeleted”的任何地方都使用这个变量。 “hasBeenDeleted”仍未更新。

【讨论】:

以上是关于核心数据实体布尔属性未保存在表格单元格删除中的主要内容,如果未能解决你的问题,请参考以下文章

具有多个文本字段的多个单元格到核心数据属性

如何选择一个 TableViewCell 并将所有其他单元格设置为 CoreData 中的布尔值 NO?

将图像保存到核心数据中并将其提取到 tableview 单元格中

核心数据:没有重复使用表格单元格的索引路径,单元格消失

使用 NSFetchedResultsController 滑动以删除表格中的单元格

当我删除一个包含核心数据的单元格时,同一个单元格显示两次