маршрутизация действий контроллера рельсов - PullRequest
1 голос
/ 20 октября 2011

Я ищу "автоматически" генерировать маршруты на основе действий, определенных в контроллере.маршрутизация ресурсов (насколько я знаю) только автоматически генерирует маршруты и помощники для глаголов http.В этом случае я обслуживаю в основном статические страницы с использованием rails, и в моем контроллере нет необходимости использовать глаголы http.

В частности:

В контроллере я определил действия, относящиеся к этим в основном статическимстраниц.

def action
end

В файле маршрутов у меня есть набор

match "/url" => 'controller#action'

Я бы хотел, чтобы все эти совпадающие маршруты генерировались автоматически на основе действий в контроллере.Что-то КОНЦЕПТУАЛЬНО в духе:

for actions in controller.erb do |action|
    'match "/action" => "controller#action"
end

Возможно ли это?Буду ли я писать код в файле маршрутов напрямую?

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

def action
    def nested_action
    end
end

Буду признателен за любые мысли оэто делоСпасибо.

Ответы [ 2 ]

1 голос
/ 20 октября 2011

Что не так с обычной /: controller /: action action?

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

0 голосов
/ 20 октября 2011

Вы можете сделать что-то вроде этого:

controller :controller_name do
   get "path/action" => :method_name, :as => :path_action
   post "path/save" => :method_name, :as => :path_save
end

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

...