ruby-on-rails – 如何从Rails中的控制器中访问路由信息(HTTP动词,动作名称等)?

假设我在控制器内,我想获得它支持的动作和HTTP动词的列表,我该怎么做?例如.

controller.actions # { [ :show, :get ], [ :update, :put ], . . .  }

或等同的东西.

最佳答案 像这样的东西:

controller = "users"
controller_routes = []
Rails.application.routes.routes.each do |route|
  if route.to_s.include?(":controller=>\"#{controller}\"")  
    controller_routes << route
  end  
end
puts controller_routes

你明白了.

点赞