PlayJson周りでぬるぽが起きる

2026-07-27 - 0 minutes, 22 seconds -
Scala Play Framework

Writesが同じブロック内でネストしてるとき、子要素→親要素の記述順となるように記述しないとぬるぽとなる

  • よくない
implicit val parentWrites: OWrites[Parent] = (
  (__ \ "status").write[String] ~
    (__ \ "child").writeNullable[Child]
  )(r => (
  r.status.entryName,
  r.child
))

implicit val childWrites: OWrites[Child] = (
    (__ \ "content").write[Int] ~
  ) (r => (
    r.content,
  ))
}
  • よろしい
implicit val childWrites: OWrites[Child] = (
    (__ \ "content").write[Int] ~
  ) (r => (
    r.content,
  ))
}

implicit val parentWrites: OWrites[Parent] = (
  (__ \ "status").write[String] ~
    (__ \ "child").writeNullable[Child]
  )(r => (
  r.status.entryName,
  r.child
))