Kotlin и ObjectBox: отношения в классах данных ToMany - PullRequest
0 голосов
/ 15 ноября 2018

Я использую ObjectBox и пытаюсь сохранить данные с помощью ToMany, но получаю эту ошибку:

kotlin.UninitializedPropertyAccessException: lateinit property fotos has not been initialized
  • Версия ObjectBox: 2.2.0
  • Версия Android 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)

Как это исправить?

...