是否有默认捕获Play 2中新操作的所有路径?

时间:2013-02-27 17:03:50

标签: playframework routes playframework-2.1

在Play 1中,您定义的新操作具有默认路径。

*       /{controller}/{action}                  {controller}.{action}

(这在新项目中默认出现)

什么是Play 2 / 2.1等效? 为什么它不出现在默认路由文件中?

2 个答案:

答案 0 :(得分:18)

实际上有可用的全能路线。根据Play 2.0+中的routing doc,您可以使用跨越多个/ 的动态部分,因此如果您将其作为给定方法的 last 路径,它将捕获每个之前没有捕获的路线。如果您在DataBase中存储了其他“路由”,则可以使用它进行进一步处理。

GET   /*path   controllers.Application.seacrhRouteInDB(path: String)

答案 1 :(得分:2)

不幸的是,Play Framework 2中的路由没有此功能。但是,您可以创建一个扩展Global的{​​{1}}类,并在GlobalSettings方法中实现catch all。查看APIdocumentation了解详情。

请注意,这仅适用于2.1.0。