我想要像
这样的东西路线
GET /endpoint pathToTemplate.templateName.scala.html
为了避免仅为提供此模板而需要创建控制器。
我需要一个模板,因为我使用导入的scala库提供值,所以这不能只是静态的html
@import tool.values._
<p>
@Tool.getValue()
<p>
答案 0 :(得分:3)
无法实现您想要的解决方案,但您可以使用一个控制器和动态URL部件映射进行解决。
首先创建一个控制器,为任何提供的路径提供视图。路径定义必须放在代码中,例如使用简单的哈希映射而不是路由文件。
object GlobalController extends Controller {
private val getRouterMap = Map(
"view1" -> views.html.view1(),
"view2" -> views.html.view2(),
"sub/view3" -> views.html.view3()
)
def route(path: String) = Action { implicit request =>
Ok(getRouterMap.getOrElse(path, views.html.notFound()))
}
}
其次,在路径文件的末尾,为已创建的操作定义映射,如下所示。
GET /*path controllers.GlobalController.route(path)
将它作为最后一行非常重要。否则它将影响下面定义的所有其他映射。
<强>提示强>
无论如何,如果我有你,我会重新考虑你的设计。单身对象不容易测试。他们迟早会让你的生活变得非常痛苦。