2

使用 json API,我如何为以下内容编写转换器:

{
"name":"John Doe",
"number":22
}

{
"name":"John Doe",
"number":22,
"slug":"John-Doe-22"
}

使用字符串操作可以做到这一点,但是如何从 2 个字段中选择值并将其应用于它们?

4

1 回答 1

2

你可以这样做:

val json = Json.obj(
   "name" -> JsString("John Doe"),
   "number" -> JsNumber(22)
)

val transformed = 
   json.transform(
      __.json.update(
        (__ \ 'slug).json.put(JsString(
          (json \ "name").as[String].replace(' ', '-') + "-" + (json \ "number").as[Int]
        ))
      )
   ).get

Ok(transformed.toString())
//{"name":"John Doe","number":22,"slug":"John-Doe-22"}

是关于播放 json 转换的好帖子。

于 2013-03-18T00:04:57.003 回答