Dans cette fonction Slick, je lis dans une table User et renvoie un objet SessionUser (SessionUser a moins de colonnes que User).La sélection de colonnes spécifiques dans Slick 3.x génère une incohérence de type
Le problème est que ce code ne compile pas, pour chaque champ dans SessionUser il me donne l'erreur type mismatch; found : slick.lifted.Rep[String] required: String
. Quelle est la signification de cette erreur et comment la réparer?
def readByUserid (userid: String) : Option[SessionUser] = {
val db = Database.forConfig(Constant.dbBank)
try {
val users = TableQuery[UserDB]
val action = users.filter(_.userid === userid)
.map(u => SessionUser(u.userid, u.firstName, u.lastName)).result
val future = db.run(action)
val result = Await.result(future, Duration.Inf)
result
}
finally db.close
}
Pouvez-vous ajouter la définition de la table? – Chobeat