问题标签 [nsbatchdeleterequest]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1660 浏览

ios - 使用带有 NSBatchDeleteRequest 的 NSFetchedResultsController

在使用 NSBatchDeleteRequest 后,我​​在从 NSFetchedResultsControllerDelegate 获取准确更新时遇到问题,这些更改以更新类型而不是 didChange 委托方法上的删除类型的形式出现。有没有办法让更改作为删除进入?(我有不同的删除和更新场景)。

删除请求:(使用调用者提供的私有上下文)

结果是:

印刷:

0 投票
1 回答
614 浏览

ios - NSBatchDeleteRequest 留下不好的关系

我有一个Project与 有一对多关系的对象,Image删除规则设置为 Cascade forproject.images和 Nullify for image.project。在这种情况下,我需要清除附加的图像,但保持项目本身完好无损。有很多图像,所以我想使用批量删除来一次将它们全部删除。

根据文档,该mergeChangesFromRemoteContextSave行应该负责更新上下文,但这似乎没有发生。

还有一件事,我知道我可以设置project.images = nil并且这可以完成工作,但不能用于我只删除图像子集的情况。

编辑:我已经进一步调查并有更多信息。

出现故障时会出现此问题project.images。如果我强迫他们全部出错,那么在删除完成时关系将成功更新。如果我将它们留作故障,则关系不会受到影响,现在将指向不存在的对象。

0 投票
2 回答
877 浏览

core-data - NSInMemoryStoreType 与 NSBatchDeleteRequest 不兼容吗?

我目前正在对与 Core Data 交互的层进行单元测试。它保存、删除和更新Item对象。但是,我尝试保存几个Items 然后执行批量删除的测试一直失败。

这是Item

这是与核心数据交互的对象,CoreDataStack

这是使用 Core Data 管理持久性的对象:

这是CoreDataStack我用于测试的子类,它包含一个内存存储:

最后,这是不断失败的测试:

问题

NSInMemoryStoreType 与 NSBatchDeleteRequest 不兼容吗?

如果不是,那么我做错了什么导致我的测试反复失败?

0 投票
1 回答
332 浏览

swift - NSBatchDeleteRequest 删除所有子实体

我的 CoreData 模型有两个子实体“CarA”和“CarB”,它们具有相同的抽象父实体“Car”。

我正在尝试使用删除所有 CarA 对象

执行deleteObjects("CarA")导致不仅删除所有 CarA 对象,还删除所有 CarB 对象。

0 投票
1 回答
146 浏览

ios - NSBatchUpdateRequest 不保存可转换属性

我有一个实体 ( TestEntity),其中包含一个包含对象 ( MyObjectClass) 的“可转换”属性。在初始加载时,可转换的保存正确;初始化如下:

但是,当我获取一个对象(我使用 NSDictionaryResultType 作为字典获取)并更新它的“Transformable”属性时,

它成功保存,但是当我再次获取它时,我得到nil了“可转换”属性。

现在这只发生在“NSBatchUpdateRequest”,因为当我使用 MOC 保存时

它保存成功,我可以在再次获取时访问更新的属性。

谁能解释一下?这是否意味着 NSBatchUpdateRequest 不可转换?

我的 NSBatchUpdateRequest 代码:

0 投票
2 回答
225 浏览

ios - 'NSBatchDeleteRequest' 仅适用于 iOS 9.0 或更高版本

我正面临这个问题

'NSBatchDeleteRequest' 仅适用于 iOS 9.0 或更高版本

在 iOS 9 之前用于相同功能的代码是什么?

0 投票
1 回答
407 浏览

ios - 为什么在重新启动应用程序或执行两次 NSBatchDeleteRequest 之前不会删除条目?

我正在阅读删除/重置核心数据中的所有条目?.

如果我按照以下步骤操作,我会得到意想不到的结果:

  1. 调用下面的代码
  2. 然后在模拟器中查询一个实体,我就取回一个实体!!!
  3. 如果我clearCoreDataStore再次调用(或重新启动),则不会从 core-data 中检索该值

我错过了什么?

0 投票
0 回答
24 浏览

swift - 通过循环从 CoreData 实体中使用 NSBatchDeleteRequest 删除一批记录

我有实体,想通过批量请求一次删除 10 条记录。实体可能有任意数量的记录。我使用 fetchLimit = 10 和偏移量 0,10,20,30 创建了获取请求...当我尝试删除时,并非所有记录都被删除。它只是删除随机记录。但是日志显示成功删除了记录。我们如何解决这个问题。

0 投票
1 回答
58 浏览

core-data - CoreData 删除后的列表刷新

我有一个来自 CoreData 实体的记录列表的视图,并且在视图中声明了以下 FetchRequest

我有两个删除功能,一个只删除具有给定 ID 的一条记录

这工作正常,因此在视图中包含记录的列表被刷新,第二个用于删除所有记录

已执行(从 CoreData 实体中删除记录)但视图中的列表行未刷新。这里可能是什么问题?