【发布时间】:2017-11-01 09:08:47
【问题描述】:
我尝试将 realmList 对象插入领域数据库
模型数据类
open class Data : RealmObject() {
@SerializedName("Settings")
var settings: Settings? = null
@SerializedName("Item")
var items: RealmList<Items>? = null
}
fun insert(data: Data) {
mRealm.executeTransactionAsync(
Realm.Transaction { realm ->
val mData = realm.createObject(Data::class.java)
mData.settings = data.settings
},
Realm.Transaction.OnSuccess {
Log.e("setting", "success")
}
)
}
但它的错误值不是有效的托管对象。然后我从这个链接找到了解决方案https://github.com/realm/realm-java/issues/5238
fun insert(data: Data) {
mRealm.executeTransactionAsync(
Realm.Transaction { realm ->
val mData = realm.createObject(Data::class.java)
mData.settings = realm.copyToRealm(data.settings)
},
Realm.Transaction.OnSuccess {
Log.e("setting", "success")
}
)
}
当我尝试在此解决方案中插入 RealmList 时不起作用。 请帮助非常感谢。
val mData = realm.createObject(Data::class.java)
mData.settings = realm.copyToRealm(data.settings) //setting is common object
mData.item = realm.copyToRealm(data.item) //item is RealmList
【问题讨论】:
-
简单,写“realm.copyToRealm(data)”
-
它工作。谢谢你。
-
这里我在 Realm 中插入一个对象列表:stackoverflow.com/a/65336647/10784151