У меня есть класс User
:
case class User (id: Int, name: String)
И я хотел бы отобразить строки из запроса, используя Anorm Stream API . Я пытался с этим кодом:
val selectUsers = SQL("SELECT id, name FROM users")
val users = selectUsers().map(
user => User(0, user.name)
).toList
Но я получаю ошибку:
Error raised is : value name is not a member of play.db.anorm.SqlRow
на
user => User(0, user.↓name)
Как мне сопоставить SqlRow
с классом?
Как подсказал Рикардо, я попытался:
object User extends Magic[User]
val users: List[User] = SQL("SELECT * FROM users").as(User*)
Но с этим кодом я получаю RuntimeException occured : ColumnNotFound(User.id)
on:
val users: List[User] = SQL("SELECT * FROM users").as(User*)
Есть предложения? Предполагается ли, что объект User
находится в строке прямо перед этим? и у меня все еще есть case class User
.