обновите значение JSObject для определенного ключа

#scala #play-json

Вопрос:

допустим, у меня есть этот простой json в качестве JSObject:

 val simpleJson = Json.parse("""{
                       "name" : "Watership Down"
                       }""".stripMargin).as[JsObject]
 

и я хочу изменить значение «имя», как бы я сделал это в JSObject?

Ответ №1:

Как сказал @Levi Ramsey, только без обертки Play Json:

 simpleJson    Json.obj("name" -> "Spaceship Up");
 

Из игры 2.4.X вы можете использовать :

 simpleJson   ("name" -> "Spaceship Up");
 

https://scastie.scala-lang.org/bvAXZw8TSTetuWJcMeQU0Q

Ответ №2:

 simpleJson    JsObject(Map("name": JsString("Spaceship Up")))
 

объединяет два JsObject s, причем правая сторона имеет приоритет.