Как смоделировать отношения многих ко многим в комнате Android с CrossRef JunctionAndroid

Форум для тех, кто программирует под Android
Anonymous
Как смоделировать отношения многих ко многим в комнате Android с CrossRef Junction

Сообщение Anonymous »

Как бы я смоделировал многозначительные отношения, как описано в https://developer.android.com/training/ ... #many-tany, но с дополнительной собственностью на развязке? Я в основном хочу достичь следующего: < /p>

Код: Выделить всё

@Entity
data class Playlist(
@PrimaryKey val playlistId: Long,
val playlistName: String
)

@Entity
data class Song(
@PrimaryKey val songId: Long,
val songName: String,
val artist: String
)

@Entity(primaryKeys = ["playlistId", "songId"])
data class PlaylistSongCrossRef(
val playlistId: Long,
val songId: Long,
val rating: Int // 

@Dao
interface SongWithPlaylistsDao {
@Query("SELECT * FROM Song")
fun list(): LiveData
}
< /code>

Я знаю, как, с точки зрения ERM, вы бы моделировали эти отношения, как это: < /p>

/-- A ---\      /- ACrossB -\            /-- B ---\
|        |      |           |            |        |
| - id   |----->|  - aId    |     |------| - id   |
| - name |      |  - bId    |-----|      |  -name |
|        |      |  - prop   |            |        |
\--------/      \-----------/            \--------/
Я также знаю, как запрашивать эти отношения, используя join , но не смог выяснить, как сделать это в комнате, сохраняя целостность данных.


Подробнее здесь: https://stackoverflow.com/questions/602 ... f-junction

Вернуться в «Android»