我遇到了没有生成路由的情况。在我的play服务中,我遇到了所有路由都在应用程序路由文件中定义如下的情况:
GET /foo packageA.ControllerA.methodA()
… lots of other endpoints under ControllerA
GET /bar packageB.ControllerB.methodB()
… lots of other endpoints under ControllerB
GET /baz packageC.ControllerC.methodC()
… lots of other endpoints under ControllerC编译应用程序时,会生成反向路由。
因为应用程序路由文件变得太大,所以决定将路由拆分到单独的路由文件中,每个包一个:
routesForA.routes
GET /foo packageA.ControllerA.methodA()
… lots of other endpoints under ControllerA等
反向路由再次正常生成。
但是,我们希望将packageA.ControllerA中的一个端点放入packageB.ControllerB的路由文件中。
假设我们搬走了
在packageB.controllerB的路由文件中添加packageA.ControllerA.methodA。
然后,生成了ControllerA.methodA的反向路由,但没有生成ControllerA路由(在packageA路由文件中定义)的所有其他反向路由。
这是一个bug还是一个特性?
发布于 2019-12-04 23:29:56
我们的主路由文件看起来有点不同。我们在主路由文件中委托给特殊的路由。
routes
-> /foo foo.Routes因此,在本例中,所有以/foo开头的请求都被转发到foo.routes文件(也在conf文件夹中)
那么foo.routes看起来就像
GET /methodB packageB.ControllerB.methodB()因此,它的url应该是/foo/methodB
https://stackoverflow.com/questions/59178469
复制相似问题