【发布时间】:2017-07-06 10:47:23
【问题描述】:
我有代码 sn-p
cursor.downField("params").downField("playlist").downField("items").as[List[Clip]]
其中 Clip 是字符串和数字的简单案例类。传入的 Json 应该包含一个带有“项目”数组的 json 对象“播放列表”,其中每个项目都是一个剪辑。所以 json 应该是这样的
{
"playlist": {
"name": "Sample Playlist",
"items": [
{
"clipId":"xyz",
"name":"abc"
},
{
"clipId":"pqr",
"name":"def"
}
]
}
}
使用上面的代码 sn-p,我得到了编译错误:
Error:(147, 81) could not find implicit value for parameter d:
io.circe.Decoder[List[com.packagename.model.Clip]]
cursor.downField("params").downField("playlist").downField("items").as[List[Clip]]
我做错了什么?如何使用 circe 为简单项目的列表/数组设置解码?
【问题讨论】:
-
你能提供更多的上下文吗?错误是指一个参数
d,那应该是什么? -
我认为是寻找解码器。一般来说,我的问题是如何将 json 数组解码为案例类对象的数组。
-
您的做法似乎是正确的。您是否为 Clip 案例类声明了解码器(手动或(半)自动)?