Module: YARD::Templates::Helpers::RouteHelper
- Defined in:
- lib/yard-api/templates/helpers/route_helper.rb
Class Method Summary collapse
- .api_methods_for_controller_and_action(controller, action) ⇒ Object
- .get_route_path(route) ⇒ Object
- .get_route_verb(route) ⇒ Object
- .matches_controller_and_action?(route, controller, action) ⇒ Boolean
- .routes_for(prefix) ⇒ Object
Class Method Details
.api_methods_for_controller_and_action(controller, action) ⇒ Object
12 13 14 15 16 17 |
# File 'lib/yard-api/templates/helpers/route_helper.rb', line 12 def self.api_methods_for_controller_and_action(controller, action) @routes ||= self.routes_for('/') controller_path = [ YARD::APIPlugin..route_namespace, controller ].join('/') controller_path.gsub!(/^\/|_controller$/, '') @routes.find_all { |r| matches_controller_and_action?(r, controller_path, action) } end |
.get_route_path(route) ⇒ Object
19 20 21 |
# File 'lib/yard-api/templates/helpers/route_helper.rb', line 19 def self.get_route_path(route) route.path.spec.to_s.gsub("(.:format)", "") end |
.get_route_verb(route) ⇒ Object
23 24 25 |
# File 'lib/yard-api/templates/helpers/route_helper.rb', line 23 def self.get_route_verb(route) route.verb.source =~ /\^?(\w*)\$/ ? $1.upcase : route.verb.source end |
.matches_controller_and_action?(route, controller, action) ⇒ Boolean
7 8 9 10 |
# File 'lib/yard-api/templates/helpers/route_helper.rb', line 7 def self.matches_controller_and_action?(route, controller, action) route.requirements[:controller] == controller && route.requirements[:action] == action end |
.routes_for(prefix) ⇒ Object
3 4 5 |
# File 'lib/yard-api/templates/helpers/route_helper.rb', line 3 def self.routes_for(prefix) Rails.application.routes.set end |