我想将 json 转换为 Salat 模型。我正在使用 Play 2.X Scala Json。我找不到任何文档来格式化可为空的 Seq。根据https://github.com/novus/salat/wiki/SupportedTypes,我不能使用 Option[Seq] 或 Option[List]。
以下 json 很好,但有时可能会丢失“位置”。
{
"id": 581407,
"locations": [
{
"id": 1692,
"tag_type": "LocationTag",
"name": "san francisco",
"display_name": "San Francisco"
}]
}
这些是类:
case class User(
var id: Int,
var locations: Seq[Tag] = Seq.empty
)
case class Tag(
id: Int,
tag_type:String,
name:String,
display_name:String
)
如何格式化可为空的“位置”?
implicit val format: Format[User] = (
(__ \ 'id).format[Int] and
(__ \ 'locations).formatNullable(Seq[Tag])
)