Como tratar uma lista de objetos dentro de outro objeto em kotlin

3 respostas
kotlin
P

Olá Pessoal,

Quero solicitar uma ajuda pois preciso montar uma entity de um objeto (Manutencao) com uma lista de outro objeto (Peca). Ao rodar o projeto ele retorna esse erro:

Cannot figure out how to save this field into database. You can consider adding a type converter for it.

Sou iniciante com Kotlin, e pelo que avaliei não aceita lista de objeto, alguma sugestão para contornar essa questão ?

Desde já agradeço.

@Parcelize
@Entity
data class Manutencao(
    @PrimaryKey(autoGenerate = true)
    val id: Int,
    var descricao: String,
    var status: String,
    var listPecas: MutableList<Peca>
): Parcelable
@Parcelize
@Entity
data class Peca (
    @PrimaryKey(autoGenerate = true)
    val id: Int,
    var numeroSerie: Long,
    var tipo: String,
) : Parcelable

3 Respostas

L

Qual ORM vc está usando?

P

Olá Lucas tudo bem ?, obrigado pelo retorno. Estou usando: androidx.room.RoomDatabase.

L

Não conheço muito de android, mas pela documentação é preciso indicar a relação oneToMany usando a anotação @Relation e, aparentemente, é utilizada uma classe separada só para essa finalidade. Dê uma lida na documentação e veja se faz sentido para vc.

FONTE: Definir relações entre objetos  |  Desenvolvedores Android  |  Android Developers

Criado 29 de dezembro de 2023
Ultima resposta 30 de dez. de 2023
Respostas 3
Participantes 2