Найти глагол HTML для действий в рельсах - PullRequest
3 голосов
/ 16 июля 2009

Есть ли способ найти HTML для данного действия контроллера? Например, я хотел бы иметь возможность ассоциировать GET с индексом и PUT с обновлением. Я хочу иметь возможность делать это динамически в зависимости от маршрутов.

Я могу получить методы действия для каждого контроллера, используя Controller.action_methods, но это возвращает набор строк методов действия. В идеале я хотел бы получить хэш в форме: {:action => :verb}.

Ответы [ 3 ]

2 голосов
/ 16 июля 2009

Прочитайте задачу о рейк-маршрутах, которая предоставит вам понимание:

например:

users GET    /users(.:format)     {:controller=>"users", :action=>"index"}

Полагаю, это то, что вы ищете?

0 голосов
/ 07 января 2013

Для предоставления полезного объекта со всеми контроллерами, действиями и связанными глаголами

def all_routes
    @all_routes ||= Rails.application.routes.routes.map do |route|
          { alias: route.name,
            path: route.path.spec.to_s,
            controller: route.defaults[:controller],
            action: route.defaults[:action],
            verb: route.verb.source.to_s.delete('$'+'^')
          }
    end
end
0 голосов
/ 16 июля 2009

:method является частью :conditions хеша, который вы можете передать map.connect

  map.connect 'post/:id', :controller => 'posts', :action => 'create_comment',
              :conditions => { :method => :get }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...