Как я могу использовать 2 объекта в комнате kotlin android? - PullRequest
0 голосов
/ 04 мая 2020

Я пытаюсь запустить его как событие кнопки

Проблема -> >test_textview.text = db.dataclass().getAll().toString()

Нет проблемы в случае одной сущности. Если вы попытаетесь сделать 2, она делает не работа. помогите мне пожалуйста ..

 (Mainactivty.kt)
        val db = Room.databaseBuilder(
            applicationContext,
            AppDatabase::class.java, "database-name"
        )
            .allowMainThreadQueries()
            .build()


    (Appdatabase.kt)
    @Database(entities = [DataClass::class, Test::class], version = 4) <-Is something strange here?
    abstract class AppDatabase : RoomDatabase()
    {
        abstract fun dataclass() : DataClassDAO
        abstract fun test() : TestDAO

    }



    (DataClass.kt)

    @Entity
    data class DataClass(var test:String)
    {
        @PrimaryKey(autoGenerate = true) var id:Int=0
    }


    @Entity
    data class Test(
        @PrimaryKey(autoGenerate = true) val id: Int,
                                         var username:String,
                                         var age:Int
    )

1 Ответ

0 голосов
/ 07 мая 2020

Каждая сущность является таблицей. Чтобы получить данные из нескольких таблиц, вам нужно присоединиться.

https://developer.android.com/training/data-storage/room/accessing-data#query - несколько таблиц

...