Ios 如何从CoreData中删除所有对象
在通过服务器刷新列表之前,我试图从CoreData中删除所有“用户”对象。与解析中unpinalobjectsinbackgroundithblock的思想相同。但是由于某些原因,我更喜欢使用CoreData而不是Parse中的LocalDataStore。 这是我的密码:Ios 如何从CoreData中删除所有对象,ios,swift,core-data,local-datastore,Ios,Swift,Core Data,Local Datastore,在通过服务器刷新列表之前,我试图从CoreData中删除所有“用户”对象。与解析中unpinalobjectsinbackgroundithblock的思想相同。但是由于某些原因,我更喜欢使用CoreData而不是Parse中的LocalDataStore。 这是我的密码: func deleteAllUsers() { for users in getFetchedResultController { self.managedObjectContex.deleteOb
func deleteAllUsers() {
for users in getFetchedResultController {
self.managedObjectContex.deleteObject(users)
appDelegate.saveContext()
}
}
func getFetchedResultController() -> NSFetchedResultsController{
fetchedResultsController = NSFetchedResultsController(fetchRequest: theFetchRequest(), managedObjectContext: managedObjectContex, sectionNameKeyPath: nil, cacheName: nil)
return fetchedResultsController
}
func theFetchRequest() -> NSFetchRequest {
let fetchRequest = NSFetchRequest(entityName: "UserModel")
let sortDescriptor = NSSortDescriptor(key: "name", ascending: true)
fetchRequest.sortDescriptors = [sortDescriptor]
return fetchRequest
}
这看起来很简单,但却让我抓狂。谢谢您的帮助。您可能重复显示了代码,但您没有解释什么不起作用。您是否确认
self.managedObjectContext
与应用程序代理正在使用的对象上下文相同?为什么在应用程序委托中调用save方法而不是简单地调用self.managedObjectContext.save()?保存时是否有错误?-例如,引用约束冲突无法确定OP是要重置所有CoreData还是只重置一个表。如果是后者,这是Swift编码的副本。可能的副本肯定是该帖子的副本。我真的很抱歉。谢谢你指点我@Paulw11:在for循环中,我收到一条消息:“()->NSFetchedResultsController”没有名为“Generator”的成员。我提到的appDelegate也是在前面的类中声明的:让appDelegate=UIApplication.sharedApplication()。以appDelegate的身份委派感谢大家的帮助,对于这篇不完整的文章再次表示抱歉