播放2.3.x Scala - 如何在视图上显示json数据?

时间:2014-09-05 01:49:41

标签: json scala view playframework-2.3 jsobject

我来自Node世界,我无法将头部通过json传递到视图然后显示数据。

我正在点击api来获取2个配置文件。 res.body是json。响应非常大 - 但现在我只想在我的视图中显示一些数据。

      // Application.scala
      val profile1 = WS.url(player1URL).get()     
      val profile2 = WS.url(player2URL).get()

      Future.sequence(Seq(profile1, profile2)).map { 
          response => Ok(views.html.index.render(
              Json.obj("player1" -> response(0).json, "player2" -> response(1).json)))
      }


    //index.scala.html
    @(z: play.api.libs.json.JsObject)

    <body>
      @z.player1  //value player1 is not a member of play.api.libs.json.JsObject
      // ideally I want
      // z.player1.battleTag //displays battle tag
      // z.player1.paragonLevel //displays paragon level
   </body>

我可以将json显示为字符串,甚至可以显示为json。但我不能通过键访问值。我只是想以html的形式显示每个玩家的3个或4个项目。然后我可以用一些css清理它。

1 个答案:

答案 0 :(得分:7)

您可以使用与此类似的代码访问json:

@{(z\"player1"\"battleTag").as[String]}

甚至:

<script>
    var jsono =  @Html(z.toString) ;
    alert(jsono.player1.battleTag)
</script>