Playframework - 如何实现列表读取?

Playframework - how to implement Reads for list?

我有一个正在使用的自定义读物,它看起来像这样:

def myReads(companyId: Long): Reads[MyClass] = (
  (JsPath \ "name").read[String] and
    Reads.pure(companyId)
  ) (MyClass.apply _)

我正在尝试读取 MyClass 列表,但我不确定如何读取。 因此,如果我只想阅读一个 MyClass,我会通过提供阅读内容来做到这一点:

request.body.validate[MyClass](MyClass.myReads(100)).fold(e => , valid => )

问题是我想读取 MyClass 的列表,所以我尝试了这样的操作:

request.body.validate[List[MyClass]](( __ \ "list").read[List[MyClass]](MyClass.myReads(100)).fold()

但它需要读取列表,不确定如何修复它。 有什么想法吗?

谢谢!

您的阅读次数必须

request.body.validate[List[MyClass]](
  ( __ \ "list").read[List[MyClass]](
    Reads.list(MyClass.myReads(100))
  )
).fold()