我正在尝试将User类的用户ID转换并存储在Play!会话变量中。然而,当我尝试打印该会话变量时,它返回一个空字符串。这是一个简单的身份验证。
身份验证期间:
整个授权定义:
一种解决方案?是什么导致无法将
身份验证期间:
session += "userid" -> user.id.toString
Printing session variable in Play! scala view:
@ctx("userid")
整个授权定义:
def authenticate(login:LoginAttempt) = {
println("in authenticate")
User.authenticate(login.username, login.password) match {
case Some(user:User) => {
session += "username" -> user.emailAddress
session += "userid" -> user.id.toString
session += "name" -> user.name
session += "accounts" -> user.accounts.toString
Redirect(session("path").getOrElse("/"))
}
case _ => {
flash += "error" -> "Wrong username or password."
Action(Authentication.login)
}
}
}
还有User类:
case class User(
val id: Long,
一种解决方案?是什么导致无法将
user.id
存储在会话中?谢谢。
SessionVar
,而不能使用RequestVar
。 - Christopher Chiche