Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails RubyonRails可选路由段_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails RubyonRails可选路由段

Ruby on rails RubyonRails可选路由段,ruby-on-rails,ruby,Ruby On Rails,Ruby,我试图在Rails应用程序中创建两条带有可选参数的路由 这是我的路由文件: get '(a)(/:area_id/)l/:location_id/(*url_title)', to: 'locations#show', as: :location get 'a/:area_id/(*url_title)', to: 'areas#show', as: :area 导航到以下URL可将我正确路由到正确的控制器: http://localhost:3000/a/1/l/2/seo-friendly

我试图在Rails应用程序中创建两条带有可选参数的路由

这是我的路由文件:

get '(a)(/:area_id/)l/:location_id/(*url_title)', to: 'locations#show', as: :location
get 'a/:area_id/(*url_title)', to: 'areas#show', as: :area
导航到以下URL可将我正确路由到正确的控制器:

http://localhost:3000/a/1/l/2/seo-friendly-title.html
http://localhost:3000/a/1/seo-friendly-title.html
但是,导航到此url不起作用:

http://localhost:3000/l/2/seo-friendly-title.html
我收到一个
没有路由匹配的
错误。当存在
l/:location\u id
部分时,是否可以使
a/:area\u id
部分可选


使用
Rails 4.2.4

您只需添加另一条路线

get 'l/:location_id/(*url_title)', to: 'locations#show'
没有理由两条路线不能映射到同一个动作