在视图中播放Framework配置值

Rya*_*yan 11 playframework

如何application.nameconf/application.conf视图中访问该值?

Oli*_*der 17

您可以使用以下代码示例来执行此操作:

${play.configuration['application.name']}
Run Code Online (Sandbox Code Playgroud)

另请参阅http://groups.google.com/group/play-framework/browse_thread/thread/1412ca8fc3edd22f


小智 7

Play 2.5.x的更新

在Play Scala 2.5.x中,不推荐使用对象Play中的方法当前.要从conf/application.conf中读取值,您必须使用DI.

注入play.api.Configuration您的控制器:

class MyController @Inject() (val configuration: play.api.Configuration) extends Controller

然后,您可以直接configuration在您的方法中使用:

def sayMyName = Action { request =>
   Ok("Your name is " + configuration.getString("application.name"))
}
Run Code Online (Sandbox Code Playgroud)

您还可以configuration在视图中使用Twirl模板:

def sayMyNameUsingView = Action { request =>
   implicit lazy val config = configuration
   Ok(views.html.index())
}
Run Code Online (Sandbox Code Playgroud)

将注入的内容configuration作为隐式发送给给定的index.scala.html

@()(implicit val configuration:play.api.Configuration)
<html>
  <body>
    <h1>Your name is @configuration.getString("application.name")</h1> 
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)