在较旧版本的游戏中,我们可以在路由中编写以下代码,其中somevar在application.conf中定义
%{
somevar = play.Play.configuration.getProperty("somevar")
}%
GET /${somevar} controllers........
所以我们可以在路由中访问somevar的值 任何人都可以帮我从application.conf
访问路由中的属性答案 0 :(得分:1)
首先,我认为从application.conf
文件访问routes
中的变量绝对没有任何好处。更改routes
文件或.conf
文件中路由值的区别是什么。在这两种情况下,您都需要更改值并重新启动服务器以使更改生效。什么是交易?
无论如何......这里去了!
<强>控制器:强>
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)
<强> application.conf:强>
version = 1.2
如果您尝试访问旧端点,您将始终被重定向到application.conf中指定的版本。