Вы можете пакетно удалить объекты с NSBatchDeleteRequest
, код принимает managedObjectContext
в качестве текущего контекста управляемого объекта:
let entityNamesToDelete = ["Foo", "Bar", "Baz"]
let persistentStoreCoordinator = managedObjectContext.persistentStoreCoordinator!
do {
for entityName in entityNamesToDelete {
let request = NSFetchRequest<NSFetchRequestResult>(entityName: entityName)
let deleteRequest = NSBatchDeleteRequest(fetchRequest: request)
try persistentStoreCoordinator.execute(deleteRequest, with: managedObjectContext)
}
try managedObjectContext.save()
} catch { print(error) }