我正在使用 ObjectBox 并尝试使用 ToMany 保存数据,但出现此错误:
kotlin.UninitializedPropertyAccessException: lateinit property fotos has not been initialized
- 对象框版本:2.2.0
- 安卓 SDK 版本:28
- Kotlin 版本:1.2.71
这是我的课程:
@Entity
data class Ficha (
@Id var id: Long = 0,
var nombre: String,
var alias: String,
var fecha: Date? = null
) {
@Backlink (to = "ficha")
lateinit var fotos: ToMany<Foto>
}
@Entity
data class Foto (
@Id
var id: Long = 0,
var tipo: Int = 0,
var ruta: String = "",
var fecha: Date? = null
) {
lateinit var ficha: ToOne<Ficha>
}
我正在尝试保存它:
val ficha = Ficha(id = 0, nombre = nombre, alias = alias, fecha = Date()).apply {
val foto1 = Foto(id = 0, tipo = 1, ruta = "C://Pepe//Cantu//1", fecha = Date())
val foto2 = Foto(id = 0, tipo = 2, ruta = "C://Pepe//Cantu//2", fecha = Date())
val foto3 = Foto(id = 0, tipo = 3, ruta = "C://Pepe//Cantu//3", fecha = Date())
this.fotos.add(foto1)
this.fotos.add(foto2)
this.fotos.add(foto3)
}
fichaDB.put(ficha)
如何解决?