将对象列表写入领域

Faw*_*kes 4 realm ios swift

我刚开始考虑实现Realm并且有一些新手的怀疑.

例如,我收到一个对象列表,我将其转换为领域对象.如何直接将整个列表写入Realm,而无需单独编写每个对象?

我想到了一个典型的解决方法,它将定义一个更大的对象,该对象包含此列表作为属性并将更大的对象写入DB.但是有可能直接将获得的对象列表写入DB而不用封装它们的东西吗?

而且在准备Realm对象列表时,我基本上有一个字典列表.将所有这些直接转换为Realm对象列表的最佳方法是什么?

TiM*_*TiM 5

只是为了确认.当你在顶部提到你的对象列表然后提到你有一个词典列表时,它们是一样的吗?

如果它们是,并且您的数据作为一组字典下来,只要键名与Realm Object模型中的属性匹配,那么您可以简单地遍历每个字典并将每个字典传递给Realm以将其创建为数据库中的新条目:

let realm = try! Realm()
try! realm.write {
    for dictionary in dictionaries {
        realm.create(MyObject.self, value: dictionary, update: false)
    }
}
Run Code Online (Sandbox Code Playgroud)

有关该API的更多信息可以在Realm Swift的文档页面上找到.

如果您的对象没有直接映射到Realm文件中的属性,那么您将需要手动重新格式化对象列表的结构,直到可以将其插入为字典,或者您可以手动创建自己的Realm关闭它们的对象实例.