2014-09-25 3 views
0

У меня есть следующий в моих маршрутах:Рельсы маршрутов изменить URL с RESSOURCES

resources :collection_pages, :only => [:show, :index] 

Прямо сейчас его собирается wwww.mysite.com/collection_pages для индекса

и collection_pages/:id для показа

Мне нужно это, чтобы перейти к /collection s вместо этого для индекса

и /collection/:id для шоу

Я пробовал path: :collections, но он не вел себя так, как хотелось бы.

Каков наилучший способ достичь этого с помощью ресурсов ressources?

+0

Почему бы не просто изменить его на 'resources: collection' и изменить имя контроллера? –

+0

Уже реализовано через приложение, используя этот маршрут – neo

+0

Оформить заказ [это] (http://stackoverflow.com/a/3676809/368167) ответ, это может немного помочь. –

ответ

1

Наряду с SO answer @ Tamer.Shlash ноты, вы можете использовать пользовательские matchers в файле маршрутов:

match '/collection', to: 'collection_pages#index', as: 'collection_index' 
match '/collection/:id', to: 'collection_pages#show', as: 'collection_show' 

Добавление как: «хххх» в матче позволяет использовать дружественные пути и URL-адрес хелперы на ваших взглядах:

redirect_to collection_index_path 
Смежные вопросы