【问题标题】:Scala Play List[Any] to JsArrayScala 播放列表[Any] 到 JsArray
【发布时间】:2022-01-27 06:54:03
【问题描述】:

我有一个List[Any],我想将其转换为JsArray

类型作品列表:

Json.arr(List("1"))

但是:

Json.arr(List("1").asInstanceOf[List[Any]])

抛出:

diverging implicit expansion for type play.api.libs.json.Reads[T1]
starting with method oFormatFromReadsAndOWrites in object OFormat

如何将List[Any] 转换为JsArray

我试过了:

implicit val listAnyFormat: OFormat[List[Any]] = Json.format[List[Any]]

但我被抛出:

No instance of Reads is available for scala.collection.immutable.Nil in the implicit scope 

使用 Play 2.8.x 和 Scala 2.11.8

【问题讨论】:

    标签: scala play-json


    【解决方案1】:

    你不能。

    至少在没有定义Format[Any] 的情况下,这在技术上可以完成,但可能无法涵盖所有​​可能的情况。

    问题是为什么你首先有一个List[Any]?它在 Scala 世界中没有多大意义。

    如果你有一个List[Something] 会更好,其中Something 有一组已知的子类型,并且每个子类型都有一个Format

    【讨论】:

      猜你喜欢
      • 2014-10-08
      • 1970-01-01
      • 1970-01-01
      • 2013-07-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-20
      • 1970-01-01
      相关资源
      最近更新 更多