Truncate table in Realm Swift

Viewed 4502

I am trying to delete all objects inside one class. I found two possibilities inside Realms documentation. First there's the possibility to use realm.deleteAll(), which deletes the whole database and there's realm.delete(), which deletes one single object. Is there a way to delete all entries inside one Table/Class in a easy way?

3 Answers

You can create deleteAll function

func deleteAll<T: Object>(_ data: [T.Type]) {
        let realm = try! Realm()
        realm.refresh()

        try? realm.write {
            for object in data {
                let allObjects = realm.objects(object)
                realm.delete(allObjects)
            }
        }
    }

Use this as -

deleteAll([OneClass.self, AnotherClass.self])
Related