有没有办法查找给定控制器操作的HTML?例如,我希望能够将GET与索引和PUT与更新相关联。我希望能够根据路线动态地做到这一点。
我可以使用Controller.action_methods获取每个控制器的动作方法,但这会返回一组动作方法的字符串。理想情况下,我想要的是表格的哈希:{:action => :verb}
。
答案 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