проблема в маршрутах - PullRequest
       1

проблема в маршрутах

0 голосов
/ 17 сентября 2010

Я хочу изменить маршрут по умолчанию в RoR на то, что я хочу: рассмотрим следующий пример ...

:controller/:action/:id

, который даст вам маршрут в браузере как: http://localhost:3000/controller/action/id

Теперь я хочу изменить его на ...

http://localhost:3000/this-is-what-i-want/id

мы можем получить псевдоним для контроллера и действия, например ...

resources :controller, :as => "my-custom-name"

и если вы хотите иметь псевдоним для действия, то

resources :controller, :path_names => { :action => 'my-custome-name-1', :action => 'my-custome-name-2' }

НО я хочу изменить контроллер и действие сразу ... если вы заметили вышеуказанный http://localhost:3000/this-is-what-i-want/id путь в вопросе ...

нужна помощь ... заранее спасибо ...

Ответы [ 2 ]

1 голос
/ 17 сентября 2010

Вам нужен именованный маршрут.

В Rails2:

map.a_name 'this-is-what-i-want/:id', :controller => 'controller_name', :action => 'action_name'

В Rails3:

match 'this-is-what-i-want/:id' => 'controller_name#action_name'
0 голосов
/ 17 сентября 2010

Вы хотите использовать маршруты отдыха, а не контроллер / действие

Я собираюсь использовать «шары» вместо «это то, что я хочу»

resources :balls

Затем, когда вы ссылаетесь на шар, выполните link_to(ball.name, ball).

Это даст вам ссылку http://localhost:3000/balls/45

Этот путевой лист отдыха rails - хорошее начало.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...