Delete/Reset all entries in Core Data?

后端 未结 30 3169
天命终不由人
天命终不由人 2020-11-22 16:00

Do you know of any way to delete all of the entries stored in Core Data? My schema should stay the same; I just want to reset it to blank.


Edit

30条回答
  •  耶瑟儿~
    2020-11-22 16:17

    swift solution:

    class func deleteAllManagedObjects() {
    
            let modelURL = NSBundle.mainBundle().URLForResource("some string", withExtension: "mom")
            let mom = NSManagedObjectModel(contentsOfURL: modelURL)
    
            for entityName in mom.entitiesByName.keys {
                let fr = NSFetchRequest(entityName: entityName as String)
                let a = Utility.managedObjectContext().executeFetchRequest(fr, error: nil) as [NSManagedObject]
                for mo in a {
                    Utility.managedObjectContext().deleteObject(mo)
                }
            }
    
            Utility.managedObjectContext().save(nil)
        }
    

提交回复
热议问题