JSON读取列表的写入[(Foo,List [FoodChildren])]

时间:2014-09-16 14:45:35

标签: scala playframework

正如问题所说

如何最好地写Writes [List[(Foo, List[FoodChildren]) ] ]每个FooFoodChildren本身都是case class

我在Scala 2.11上,玩框架2.3.1

2 个答案:

答案 0 :(得分:1)

你能使用第三个案例类而不是元组吗? JSON不支持元组。

如果您使用第三个案例类,则可以使用Json.format[...]来构建读取/写入。

答案 1 :(得分:1)

只需编写自己的Writer而不是使用宏:

implicit val myTupleWrites = new Writes[(Int,List[FoodChildren])] {
  def writes(myTuple: (Int,List[FoodChildren])) = Json.obj(
    "i" -> myTuple._1,
    "lst" -> myTuple._2
  )
}

https://www.playframework.com/documentation/2.3.x/ScalaJson