Маршрутизация к имени страницы
Есть ли способ, которым я мог бы направить - http://localhost:3000/pages/1 на http://localhost:3000/home и все другие страницы на моем сайте, т.е. - http://localhost:3000/pages/4 на http://localhost:3000/contact-us автоматически?
Я могу сделать это с помощью -
match "/home" => 'pages#show', :id => 1
match "/cars-for-sale" => 'pages#show', :id => 1
match "/contact-us" => 'pages#show', :id => 4
но делать это нужно задним ходом и автоматически, если это возможно.
1 ответ
Возможно, вам действительно нужен редирект:
match "/pages/1", :to => redirect("/home")
match "/pages/:id", :to => redirect("/contact-us")
Обратите внимание, что порядок важен - "Маршруты Rails совпадают в указанном порядке" (см. http://edgeguides.rubyonrails.org/routing.html).