Мозг, немного жареный.... Как делают я получаю хеш: контроллер и: действие от relative_path?
Это - в основном противоположность url_for. в примере ниже, "some_function" является таинственным именем функции, которое я ищу... Я знаю, что это легко, просто не может помнить или, казаться, может найти его в документах.
Как так:
some_function('/posts/1/edit')
=> {:controller => 'posts', :action => 'edit', :id => '1'}
Rspec имеет метод 'params_for', который использует методы маршрутизации контроллера действий для разбора путей с методами на маршруты.
Они немного более надежны, но сводятся к:
def params_for(path, method)
params = ActionController::Routing::Routes.recognize_path(path, :method => method)
end