【发布时间】:2014-09-23 09:16:27
【问题描述】:
这是一个初学者的问题:
我已经这样定义Event:
case class Event(id: Pk[Long], name: String, userId: Pk[Long])
object Event {
private val EventParser: RowParser[Event] = {
get[Pk[Long]]("id") ~
get[String]("name") ~
get[Pk[Long]]("userId") map {
case id ~ name ~ userId => Event(id, name, userId)
}
}
def findAll(): Seq[Event] = {
DB.withConnection { implicit connection =>
SQL("select * from events").as(EventParser *)
}
}
}
然后我将它渲染到这样的视图中:
def events = Action {
val events: Seq[Event] = Event.findAll()
Ok(views.html.events(events))
}
但我想返回 Json 数据。
Json.toJson(events) 无法使用,因为事件类型为 Seq。
我没有找到关于这个主题的好教程,我尝试遵循这个答案:play framework working with json objects in Scala 但它似乎不适用于 play 2.2。
所以我的问题是:您知道在访问数据库后将 Json 中的序列渲染到视图的简单方法吗?
【问题讨论】:
-
您是否为
Event定义了Writes? -
我试过但没有成功,因为我找到的答案不适用于游戏! 2.2.3,有链接吗? (我是 Play 新手!)
-
你是什么意思他们不工作? json api 在过去一年左右没有太大变化:playframework.com/documentation/2.3.x/ScalaJsonCombinators
-
对不起,我刚开始玩!我已经读过,但没有成功的类型序列。
标签: json scala playframework-2.0