【发布时间】:2017-02-16 15:54:07
【问题描述】:
有没有办法批量删除存储在核心数据中所有实体中的所有数据?
我在某处读到,在 iOS 9 或 10 中,苹果引入了一种批量删除的方法,但我似乎找不到任何好的信息。
最终,我只需要一个遍历实体并删除其中所有数据的函数。看起来它应该足够简单,但事实证明它的文档/教程非常难以找到。
有什么想法吗?
编辑
我将以下代码添加到附加到按钮的 IBAction 中:
@IBAction func clearAllData(_ sender: AnyObject) {
let fetch = NSFetchRequest<NSFetchRequestResult>(entityName: "PLProjects")
let request = NSBatchDeleteRequest(fetchRequest: fetch)
//get the data from core data
getPLData()
//reload the table view
tableView.reloadData()
}
但这似乎不起作用。如果我关闭项目并重新打开它,数据仍然存在。我假设这也是表格视图不更新的原因,因为数据实际上并没有被删除。
【问题讨论】:
标签: core-data swift3 ios10 xcode8