class RoutesJS::Routing::Route

Attributes

name[R]
url[R]

Public Class Methods

new(rails_route) click to toggle source
# File lib/routesjs/routing/route.rb, line 6
def initialize(rails_route)
  @name = generate_name(rails_route)
  @url = generate_url(rails_route)
end

Private Instance Methods

app(route) click to toggle source
# File lib/routesjs/routing/route.rb, line 30
def app(route)
  route.app.respond_to?(:app) ? route.app.app : route.app
end
generate_name(route) click to toggle source
# File lib/routesjs/routing/route.rb, line 13
def generate_name(route)
  route.name.camelize(:lower)
end
generate_url(route) click to toggle source
# File lib/routesjs/routing/route.rb, line 17
def generate_url(route)
  return redirect_url(route) if redirect?(route)
  route.path.spec.to_s.sub(/\(\.:format\)\z/, "")
end
redirect?(route) click to toggle source
# File lib/routesjs/routing/route.rb, line 26
def redirect?(route)
  app(route).respond_to?(:block)
end
redirect_url(route) click to toggle source
# File lib/routesjs/routing/route.rb, line 22
def redirect_url(route)
  app(route).block
end