在rails中查找动作的HTML动词

时间:2009-07-16 18:48:58

标签: ruby-on-rails routing

有没有办法查找给定控制器操作的HTML?例如,我希望能够将GET与索引和PUT与更新相关联。我希望能够根据路线动态地做到这一点。

我可以使用Controller.action_methods获取每个控制器的动作方法,但这会返回一组动作方法的字符串。理想情况下,我想要的是表格的哈希:{:action => :verb}

3 个答案:

答案 0 :(得分:2)

阅读rake路线任务,这将提供见解:

e.g:

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

我认为这就是你追求的目标?

答案 1 :(得分:0)

:method是您可以传递到:conditions

map.connect哈希的一部分
  map.connect 'post/:id', :controller => 'posts', :action => 'create_comment',
              :conditions => { :method => :get }

答案 2 :(得分:0)

提供包含所有控制器,操作和关联动词的有用对象

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