假设我必须Reads[Person]
为Person
类编写自定义:
import play.api.libs.functional.syntax._
implicit val personReads: Reads[Person] = (
(__ \ "name").read[String] and // or ~
(__ \ "age").readNullable[Int]
) ((name, age) => Person(name = name, age = age))
它就像一个魅力,真的(不)。
但是当 json 对象中只有一个字段时,我该怎么办?
Reads
和的核心在于Writes
转换这些“解析”步骤的函数式语法。
以下不编译:
import play.api.libs.functional.syntax._
implicit val personReads: Reads[Person] = (
(__ \ "name").read[String]
)(name => Person(name))
你能建议如何处理它吗?