Playframework - 如何实现列表读取?

时间:2016-05-05 09:38:48

标签: json playframework playframework-2.0

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

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()

但是它期待Reads for list,不知道如何修复它。 有什么想法吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

您的阅读必须是

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