【发布时间】:2018-04-25 20:09:32
【问题描述】:
我的服务器代码将收到以下JSON
{
"signin-info":{
"email" : "someemail",
"password": "password"
}
}
我创建了以下 2 个案例类来表示这种结构。
case class UserSigninInfo(
email:String,
password:String
)
case class UserSignin(
signinInfo: UserSigninInfo
)
为了读取 JSON,我创建了以下 2 个Reads
implicit val userSigninInfoReads:Reads[UserSigninInfo] = (
(JsPath \ "email").read[String] and
(JsPath \ "password").read[String]
)(UserSigninInfo.apply _)
implicit val userSigninReads:Reads[UserSignin] = (
(JsPath \ "signin-info").read[UserSigninInfo]
)(UserSignin.apply _)
但是对于userSigninReads,我收到以下编译错误。我做错了什么?
overloaded method value read with alternatives:
[error] (t: models.UserSigninInfo)play.api.libs.json.Reads[models.UserSigninInfo] <and>
[error] (implicit r: play.api.libs.json.Reads[models.UserSigninInfo])play.api.libs.json.Reads[models.UserSigninInfo]
[error] cannot be applied to (models.UserSigninInfo => models.UserSignin)
[error] (JsPath \ "signin-info").read[UserSigninInfo]
[error] `
【问题讨论】: