我有Json
我想用来映射Moshi
和存储的东西Room
{
"name": "My Group",
"members": [
{
"id": "119075",
"invitedUser": {
"id": 97375,
"email": "xxx@gmail.com"
},
"inviting_user": {
"id": 323915,
"email": "yyy@gmail.com"
}
},
{
"id": "395387",
"invitedUser": {
"id": 323915,
"email": "aaa@gmail.com"
},
"inviting_user": {
"id": 323915,
"email": "bbb",
}
}
]
}
我准备了我的模型
@Entity(tableName = "groups")
data class Group(
@PrimaryKey
val id: Long,
val members: List<Member>
)
@Entity(tableName = "members")
data class Member(
@PrimaryKey
val id: Long,
@Json(name = "invited_user")
@ColumnInfo(name = "invited_user")
val invitedUser: User,
@Json(name = "inviting_user")
@ColumnInfo(name = "inviting_user")
val invitingUser: User
)
@Entity(tableName = "users")
data class User(
@PrimaryKey
val id: Int,
val email: String
)
目前,我已error: Cannot figure out how to save this field into database.
阅读此https://developer.android.com/training/data-storage/room/relationships。但是,如果我要像文档中那样对关系建模,我不知道如何让 Moshi 映射关系?你找到解决这个问题的最简单的方法了吗?