невозможно достичь вашего решения желания, но вы можете сделать обходной путь с одним контроллером и динамическим составлением 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)
Очень важно поставить его в качестве последней строки. В противном случае будут теневые все другие сопоставления, определенные ниже.
Подсказка
Во всяком случае, если я вам посуду, я бы пересмотреть свой проект. Объекты Singleton нелегко проверить. Рано или поздно они сделают вашу жизнь очень мучительной.
Это невозможно. Вы также можете нарушить парадигму MVC, вызывая подобные функции из представления. Обычно они передаются от контроллера к виду. –