【发布时间】:2022-10-23 18:06:40
【问题描述】:
我正在尝试使用 Kotlin Multiplatform 创建一个小型应用程序,我可以在其中保存书名及其作者,但我正在努力处理数据类以及如何将它们映射在一起以便我获得作者所有的书籍和发布日期.
CREATE TABLE book(
id INTEGER NOT NULL,
name TEXT NOT NULL,
publishDate INTEGER NOT NULL,
authorId INTEGER NOT NULL
)
CREATE TABLE author(
id INTEGER NOT NULL,
name TEXT NOT NULL
)
这是我的数据类:
@Serializable
data class bookEntity(
id: Int,
name: String,
authorId: Int
)
@Serializable
data class authorEntity(
id: Int,
authorName: String
books: List<bookEntity>
)
和我的查询:
selectAuthors:
SELECT * FROM author
JOIN book ON book.authorId = author.id
WHERE book.authorId = author.id
我尝试了以下映射,但没有奏效:
private fun mapAuthor(
id: Int,
authorName: String,
bookId: String,
name: String,
publishDate: Long
): Author(
return Author (
id = id,
authorName = authorName,
book = List<BookEntity>(
id = bookId,
name = name,
publishDate = publishDate
)
)
)
我如何使用这样的列表? 每一个帮助表示赞赏!
【问题讨论】:
标签: android kotlin data-class kmm sqldelight