如何在rails app中使用正则表达式编写自定义路由?

时间:2016-06-20 04:51:18

标签: ruby-on-rails ruby rails-routing ruby-on-rails-4.2

在routes.rb中,我们已经有这样的路线:

get 'articles/*article_name', to: 'article_details#show'

但我们需要另一条路线(如下所示),需要重定向到其他控制器。

get 'articles/sitemap*', to: 'article/sitemap#show'

网址映射后的网址可能包含任何内容(文章/网站地图-abc,文章/网站地图-bcd )。

如何实现这一目标?

1 个答案:

答案 0 :(得分:0)

将它放在你的article_name路线之前:

get 'articles/:sitemap', to: 'articles/sitemap#show', sitemap: /sitemap-.+/

我认为你的控制器是articles并在上面的路线中修正了,如果我错了,你可以将它改回article

Doc在这里:http://guides.rubyonrails.org/routing.html#segment-constraints