Rails: парсинг информации о маршруте с URL - PullRequest
13 голосов
/ 29 апреля 2010

Как я могу разобрать строку URL в хеш как

{:controller => 'controller_name', :action => 'action_name', :id => 'id'}

Ответы [ 2 ]

31 голосов
/ 06 апреля 2012

В Rails 3 вы можете делать следующее:

Rails.application.routes.recognize_path "/accounts/1"
# {:action=>"show", :controller=>"accounts", :id=>"1"}

Использование ActionController :: Routing :: Routes.recognize_path продолжало выдавать ActionController :: RoutingError Исключение: нет совпадений маршрутов "/ account / 1

11 голосов
/ 29 апреля 2010

Вы можете использовать ActionController::Routing::Routes.recognize_path, в зависимости от формата URL:

>> ActionController::Routing::Routes.recognize_path("/accounts/1",:method=>:get)`
# {:action=>"show":controller=>"accounts",:id=>"1"}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...