这是一个愚蠢的问题:我只想向视图渲染两个Json object
,我设法分别渲染它们但不能一起渲染......
我尝试了一个简单的伎俩(我尝试了两个'+'):
def totalToPay = Action {
Ok(Json.toJson(Account4686.findAllWithCredit()) + Json.toJson(Account403.findAllByOrgaIdWithCredit(1)))
}
但没有成功。我有这个编译错误:[error] /home/sim/dev/ticketapp/app/controllers/Admin.scala:136: type mismatch;
[error] found : play.api.libs.json.JsValue
[error] required: String
。
执行此操作的正确方法是什么?
答案 0 :(得分:1)
你可以JsArray
构建一个Seq[JsValue]
的构造函数:
JsArray(Seq(Json.toJson(obj1), Json.toJson(obj2))
或者,如果您想使用JsObject
而不是数组,则可以执行以下操作:
Json.obj("obj1" -> obj1, "obj2" -> obj2)
要合并两个对象,您可以使用++
Json.toJson(obj1).asInstanceOf[JsObject] ++ Json.toJson(obj2).asInstanceOf[JsObject]