Я пытаюсь вставить объект 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
Наконец я нашел решение. Спасибо, mr.developer
realm.copyToRealmOrUpdate(data)