Как это сделать с маршрутизацией в Rails? - PullRequest
0 голосов
/ 14 февраля 2011

Скажем, у нас есть простой ресурс под названием news:

resources :news

Сгенерированные пути имеют вид /news/:id.Я хотел бы предоставить ярлык для этого, удалив / news /, чтобы / 1 / перешел в news # show с идентификатором 1 и таким же образом для всех других изобретательных действий новостей.

Я подумал, что этовозможно что-то вроде

match '/:id(/:action)', :controller => 'news'

, но это не работает.

Ответы [ 3 ]

2 голосов
/ 14 февраля 2011

Чтобы изменить путь к ресурсу, используйте: путь =>

resources :news, :path => "/"
0 голосов
/ 14 февраля 2011

Поместите пользовательский маршрут внизу вашего route.rb, это должно сработать, это даст ему наименьший приоритет и позволит сначала работать действующим маршрутам:

match '/:id', :to => 'news#show'

Важно отметить, что это в основном направит все, что ранее не было перехвачено и не существует в качестве статического файла, к этому контроллеру / действию. Вы должны убедиться, что вы отображаете страницу с ошибкой 404, если запись новостей не существует.

0 голосов
/ 14 февраля 2011

Попробуйте это в самом низу вашего файла маршрутов:

match ':id', :to => "news#show"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...