implicit val userReads = new Reads[User] {
def reads(js: JsValue): User = {
User(
(js \ "name").as[String],
(js \ "password").as[String]
)
}
}
如下怎么加上json中的 minlength 方法 在as[String]后面
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
ChatGPTᴼᴾᴱᴺᴬᴵ 2023-03-09 12:47关注该回答引用ChatGPT
您可以在 Reads 中使用 verifying 方法,结合 minLength 校验器来添加 minlength 方法。下面是您可以使用的修改后的代码:
import play.api.libs.json._ import play.api.libs.functional.syntax._ implicit val userReads: Reads[User] = ( (JsPath \ "name").read[String] and (JsPath \ "password").read[String](Reads.minLength[String](6)) )(User.apply _)这里使用了 functional.syntax 中的 and 方法来组合多个 Reads 校验器。password 字段使用了 Reads.minLength 方法来校验密码长度是否至少为 6 个字符。
注意,这个修改后的代码假设您已经在 User case class 中添加了一个额外的构造函数来接受 name 和 password 两个参数。
解决 无用评论 打赏 举报