gpt4 book ai didi

json - Play Framework Scala 格式的大型 JSON(未找到 unapply 或 unapplySeq 函数)

转载 作者:行者123 更新时间:2023-12-04 12:52:42 27 4
gpt4 key购买 nike

我需要在我的服务器上接收一个大的 JSON(超过 22 个字段)。
我有一个包含很多字段的案例类:

case class Filters(objectType: Option[String] = None,
deal: Option[String] = None,
roomsCount: Option[String] = None,
region: Option[Int] = None,
district: Option[Int] = None,
direction: Option[Int] = None
...
)

和 Controller 中的 JSON 格式函数:
implicit val filtersFormat = Json.format[Filters]
在编译时我有错误:
[error] WebSockets.scala:18: No unapply or unapplySeq function found
[error] implicit val filtersFormat = Json.format[Filters]
[error] ^

有没有办法在不将 JSON 分解成小部分的情况下解决问题?

最佳答案

正如@Sawyer 提到的,您可以使用 external library .这是取自 this blog .

首先将 lib 依赖项添加到您的 SBT

libraryDependencies += "ai.x" %% "play-json-extensions" % "0.42.0"

然后你可以像这样使用它:
import ai.x.play.json.Jsonx
import play.api.libs.json.{Json, OFormat}

case class Foo(a1: String, a2: String, a3: String, a4: String, a5: String,
a6: String, a7: String, a8: String, a9: String, a10: String,
a11: String, a12: String, a13: String, a14: String, a15: String,
a16: String, a17: String, a18: String, a19: String, a20: String,
a21: String, a22: String, a23: String)

object Foo {
implicit val f: OFormat[Foo] = Jsonx.formatCaseClass[Foo]
}

关于json - Play Framework Scala 格式的大型 JSON(未找到 unapply 或 unapplySeq 函数),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37411165/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com