Как я могу получить доступ к значению application.name
из conf/application.conf
в представлении?
Значение конфигурации Play Framework в представлении
Ответ 1
Для этого можно использовать следующий пример кода:
${play.configuration['application.name']}
Также см. http://groups.google.com/group/play-framework/browse_thread/thread/1412ca8fc3edd22f
Ответ 2
Обновление для Play 2.5.x
В Play Scala 2.5.x, метод current в объекте Play устарел. Чтобы прочитать значение из conf/application.conf, вы должны использовать DI вместо этого.
Inject 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"))
}
Вы также можете использовать configuration
в своем образе Twirl template:
def sayMyNameUsingView = Action { request =>
implicit lazy val config = configuration
Ok(views.html.index())
}
Отправьте введенный configuration
как неявный в заданный index.scala.html
@()(implicit val configuration:play.api.Configuration)
<html>
<body>
<h1>Your name is @configuration.getString("application.name")</h1>
</body>
</html>
Ответ 3
Обновление для воспроизведения 2...
В Play Scala 2.3.x, чтобы прочитать значение из conf/application.conf
, вы можете сделать следующее:
import play.api.Play.current
...
current.configuration.getString("application.name")