Rails url_for для именованного маршрута с необязательными параметрами - PullRequest
5 голосов
/ 11 марта 2011

Если у меня есть маршрут с дополнительными параметрами, как показано ниже:

match 'comments/new(/:post_id/(/:parent_id))' => 'comments#new'

Существует ли чистый способ создания ссылок для этого именованного маршрута?Очевидно, я могу сделать:

link_to "New Comment", "comments/new/#{post_id}"

Но я думаю, что есть более чистый способ.Я просто не могу найти какую-либо ссылку в документации url_for или link_to.

1 Ответ

16 голосов
/ 11 марта 2011

Если вы называете маршрут, вы можете назвать его красиво:

match 'comments/new(/:post_id/(/:parent_id))' => 'comments#new', :as => :new_comment

Вы можете вызвать его с помощью хэша опций или массива в правильном порядке:

link_to "New Comment", new_comment_path(:post_id => 1, :parent_id => 2)
link_to "New Comment", new_comment_path(1, 2)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...