sinatra-named-routes-subdomains 0.1.5 → 0.1.6
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/sinatra/named_routes.rb +11 -0
- data/lib/sinatra/route_parser.rb +1 -0
- data/lib/sinatra/version.rb +1 -1
- metadata +1 -1
data/lib/sinatra/named_routes.rb
CHANGED
@@ -10,6 +10,12 @@ module Sinatra
|
|
10
10
|
# Extended support passing in named route and parameters.
|
11
11
|
def uri( addr = nil, absolute = true, params = nil )
|
12
12
|
if addr.is_a? Symbol
|
13
|
+
if !params.nil?
|
14
|
+
params = params.merge( NamedRoutes.get_params( addr ) )
|
15
|
+
else
|
16
|
+
params = NamedRoutes.get_params( addr )
|
17
|
+
end
|
18
|
+
|
13
19
|
addr = NamedRoutes.get_path( addr, params )
|
14
20
|
end
|
15
21
|
|
@@ -61,6 +67,11 @@ module Sinatra
|
|
61
67
|
NamedRoutes.routes[name].build params
|
62
68
|
end
|
63
69
|
|
70
|
+
def self.get_params(name)
|
71
|
+
raise ArgumentError, "No route with the name #{name} exists." if NamedRoutes.routes.nil?
|
72
|
+
NamedRoutes.routes[name].params
|
73
|
+
end
|
74
|
+
|
64
75
|
def self.routes
|
65
76
|
@@routes ||= {}
|
66
77
|
end
|
data/lib/sinatra/route_parser.rb
CHANGED
data/lib/sinatra/version.rb
CHANGED