如何动态调用函数来播放框架标量

时间:2014-09-08 12:23:25

标签: scala intellij-idea playframework

我使用Play框架为IntelliJ Scala中的每个函数创建了单独的文件。如何调用每个函数?

@services = { html code of service.scala.html  }
@navigation ={ html code of navigation.scala.html } 

我有contact.scala和更多这样的功能。

我的application.controller

object Application extends Controller {
  def index = Action {
    Ok(views.html.index())
  }
  def navigation = Action {
    Ok(views.html.navigation())
  }
  def services = Action {
    Ok(views.html.services())
  }
}

我的路线

GET        /                    controllers.Application.index
GET        /navigation          controllers.Application.naigation
GET        /services            controllers.Application.services  

我甚至有一个index.scala.html和main.scala.html。现在我如何在一个页面中调用所有这些?

2 个答案:

答案 0 :(得分:1)

您可以在任何其他视图中包含已定义的模板。例如,如果您在 views 目录中有 services.scala.html ,则可以通过在任何视图中添加以下行来插入它:

@views.html.services()

请注意,您不必定义路线或动作映射,以便将其包含在视图中。

答案 1 :(得分:0)

是的,创建一个包含所有其他html内容的模板,例如

@(..)(navigation: Html)(services: Html) {
.
.
<html>
  <body>
   @navigation // bring in your individual html contents here or where ever you want.
   @services
   .
   .
  </body>
</html>
}