我有我学习 2013-11-06 10:44 采纳率: 0%
浏览 837

如下怎么加上json中的 minlength 方法 在as[String]后面

implicit val userReads = new Reads[User] {
def reads(js: JsValue): User = {
User(
(js \ "name").as[String],
(js \ "password").as[String]
)
}
}

  • 写回答

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 两个参数。

    评论

报告相同问题?