との「多対多」の関係をどのように表現できRoom
ますか? 私の列名も同じです。
たとえば、私はGuest
とを持っていReservation
ます。Reservation
には多数Guest
の を含めることができ、aGuest
は多数の予約の一部にすることができます。
私のエンティティ定義は次のとおりです。
@Entity data class Reservation(
@PrimaryKey val id: Long,
val table: String,
val guests: List<Guest>
)
@Entity data class Guest(
@PrimaryKey val id: Long,
val name: String,
val email: String
)
ドキュメントを調べているときに@Relation
. 私はそれが本当に紛らわしいと思いました。
これによると、POJO を作成し、そこに関係を追加したいと思います。したがって、私の例では、次のことを行いました。
data class ReservationForGuest(
@Embedded val reservation: Reservation,
@Relation(
parentColumn = "reservation.id",
entityColumn = "id",
entity = Guest::class
) val guestList: List<Guest>
)
上記で、コンパイラエラーが発生します:
> Cannot figure out how to read this field from a cursor.
の実用的なサンプルを見つけることができませんでした@Relation
。