找不到Json序列化器

时间:2016-03-01 21:21:04

标签: scala playframework

我正在从https://www.playframework.com/进行示例Play项目。我已经复制了教程中的代码。

但是,来自控制器Application的此代码:

  def getPersons = Action {
    val persons = DB.query[Person].fetch
    Ok(Json.toJson(persons))
  }

我收到此错误:

No Json serializer found for type Stream[models.Person with sorm.Persisted]. Try to implement an implicit Writes or Format for this type.

但我认为情况并非如此,因为此类型的隐式格式已在模型Person中实现:

case class Person(name: String) {

  implicit val personFormat = Json.format[Person]
}

此模型将导入控制器Application

隐式Format是否定义不明确?

2 个答案:

答案 0 :(得分:2)

personFormat需要位于Person的伴随对象中,而不是Person类本身。

答案 1 :(得分:0)

Person的json格式应该在一个伴随对象中,并且你在(case)类中有它:)