Я знаю, как установить корень маршрутов моего приложения rails на контроллер и действие.
Но как добавить id?
/pages/show/1 должен быть корнем.
Как это установить?
Ответ 1
Была эта же проблема, и это сработало для меня:
root :to => "pages#show", :id => '1'
Ответ 2
В Rails 4.0 вы можете объявить корневой маршрут следующим образом:
root 'controller#action'
Ответ 3
Решение Matthew работает, но я думаю, что это более читаемо для получения объекта. Например, предположим, что вы хотите выполнить root для действия Page#show для страницы с именем "посадку". Это немного читаемо:
С точки зрения производительности это решение хуже, потому что для этого требуется дополнительный запрос к базе данных, но это решение более читаемо, если производительность не является высокоприоритетной.
Ответ 4
Try:
match 'pages/show/:id' => 'pages#show', :as => :root
В консоли Rails. rake routes | grep root, должен показать что-то вроде: