在旧版本的 play 中,我们可以在 routes 中编写以下代码,并在 application.conf 中定义 somevar
%{
somevar = play.Play.configuration.getProperty("somevar")
}%
GET /${somevar} controllers........
所以我们可以在路由中访问 somevar 的值 谁能帮我从 application.conf 访问路由中的属性
最佳答案
首先,我认为从 routes
文件访问 application.conf
中的变量绝对没有任何好处。在 routes
文件或 .conf
文件中更改路由值有什么区别。在这两种情况下,您都需要更改值并重新启动服务器以使更改生效。那么交易是什么?
无论如何……开始吧!
Controller :
public static Result getVersion(double var) {
if (var != ConfigFactory.load().getDouble("version")) {
return redirectTo();
}
return ok("version -> " + var);
}
public static Result redirectTo() {
return redirect(controllers.routes.Application.getVersion(ConfigFactory.load().getDouble("version")));
}
路线:
GET /redirect controllers.Application.redirectTo()
GET /:v/get controllers.Application.getVersion(v: Double)
应用程序配置文件:
版本 = 1.2
如果您尝试访问旧端点,您将始终被重定向到 application.conf 中指定的版本。
关于java - Play 2 - 访问路由文件中的 conf 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28960724/