Ruby on Rails: Получите контроллер и имя действия на основе пути

Я пытаюсь получить контроллер и имя действия на основе пути. У меня есть маршрут:

map.resources :permissions

Я думал, что мог использовать:

ActionController::Routing::Routes.recognize_path "/permissions/1"

Получить хеш как:

{ :controller => "permissions", :action => "show" }

Фактический хеш, который возвращается:

{ :controller => "permissions", :action => "1" }

Как я получаю корректное имя действия вместо просто моего переданного в идентификаторе? Диспетчер должен смочь достигнуть его так или иначе, или направляющие не работали бы, но я испытываю затруднения при определении местоположения, как это выполняется.

19
задан 11 August 2010 в 09:32
поделиться

1 ответ

Что вам на самом деле нужно? Если вам действительно нужно имя действия и имя контроллера ... вы можете просто запросить

controller.controller_name

и

controller.action_name

. Это помогает или вам действительно нужно проанализировать строку, чтобы это сделать?

12
ответ дан 30 November 2019 в 03:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: