Play2 Scala - 具有循环依赖关系的 Json 格式



>我有两个类,每个类都包含另一个:

import play.api.libs.json.Json
case class Param(name: String,
                 data: ParamData)
case class ParamData(`type`: String,
                     value: String,
                     options: Option[List[Param]])
implicit val paramDataJsonFormat = Json.format[ParamData]
implicit val paramJsonFormat = Json.format[Param]

当我定义 Json 格式时,出现编译错误:

错误:(110, 51)列表[参数]] 没有隐式格式可用。

implicit val paramJsonFormat = Json.format[Param]

如果我更改隐式的顺序,我会在另一行收到相同的错误:

错误:(110, 51)列表[参数数据]] 没有隐式格式可用。

implicit val paramDataJsonFormat = Json.format[ParamData]

我该如何解决这个问题?

在 Play 官方文档中找到了解决方案。有一个关于递归类型的特定部分我错过了。

最新更新