在Swift中将数组保存到领域吗? [英] Saving Array to Realm in Swift?
本文介绍了在Swift中将数组保存到领域吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
是否可以将对象数组保存到Realm
?每当我对数组进行更改时,都应将其保存到Realm.
Is it possible to save an array of objects to Realm
? Anytime I make a change to the array it should be saved to Realm.
我当前的解决方案是使用for loop
为对象保存对象.对于附加/修改对象,调用save()
可以完成此工作,但是当我从中删除对象时不会这样做.
My current solution is to save object for object with a for loop
. For append/modifying objects calling save()
will do the job, but not when I remove an object from it.
class CustomObject: Object {
dynamic var name = ""
dynamic var id = 0
override static func primaryKey() -> String? {
return "id"
}
}
struct RealmDatabase {
static var sharedInstance = RealmDatabase()
var realm: Realm!
let object0 = CustomObject()
let object1 = CustomObject()
var array = [object0, object1]
init() {
self.realm = try! Realm()
}
func save() {
for object in self.array {
try! self.realm.write {
self.realm.add(object, update: true)
}
}
}
}
推荐答案
要保存对象列表,您必须使用Realm List
,而不是Swift数组.
To save lists of objects you have to use a Realm List
, not a Swift Array.
let objects = List<CustomObject>()
然后,您可以添加元素:
Then, you can add elements:
objects.append(object1)
看看与很多关系和收藏部分/"rel =" noreferrer>官方文档.
Take a look at to many relationships and Collections sections of the official docs.
这篇关于在Swift中将数组保存到领域吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文