在我的ror
应用程序中,我想定义一个路由,该路由将任何长度的路径调度到给定的处理程序。
我希望任何以http://example.com/xyz/...
开头的 URL 转到同一个处理程序,并将完整路径作为参数传入。
换句话说,以下任何和所有 URL 都应该转到xyz
路由的同一处理程序......
http://example.com/xyz
http://example.com/xyz/foo
http://example.com/xyz/foo/bar
http://example.com/xyz/quack/bark/oink
http://example.com/xyz/hip/po/pot/a/mus
http://example.com/xyz/[any arbitrary path with any number of components]
。在处理程序中,我需要能够检索提交的整个路径。
我想我应该把这样的东西放进config/routes.rb
......
get "xyz/[what goes here?]", to: "xyz#handler"
。但是我想不出任何方法可以在ror
中完成这项工作.
在flask
,我可以设置一条看起来像这样的路线......
/xyz/<path:pathvar>
。/xyz
之后显示的整个路径将可供pathvar
变量中的处理程序使用。ror
中是否有任何类似之处?
哦!我在这里找到了答案:铁路包罗万象的路线
我只是这样做...
get "xyz/*pathvar", to: "xyz#handler"
。而/xyz
之后出现的完整路径将显示在params['pathvar']
中。