aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--actionpack/lib/action_dispatch/routing/mapper.rb10
1 files changed, 7 insertions, 3 deletions
diff --git a/actionpack/lib/action_dispatch/routing/mapper.rb b/actionpack/lib/action_dispatch/routing/mapper.rb
index 9ca4e16802..8dbf33d5f9 100644
--- a/actionpack/lib/action_dispatch/routing/mapper.rb
+++ b/actionpack/lib/action_dispatch/routing/mapper.rb
@@ -258,7 +258,13 @@ module ActionDispatch
def match(*args)
options = args.extract_options!
+
options = (@scope[:options] || {}).merge(options)
+
+ if @scope[:name_prefix]
+ options[:as] = "#{@scope[:name_prefix]}#{options[:as]}"
+ end
+
args.push(options)
super(*args)
end
@@ -391,9 +397,7 @@ module ActionDispatch
validate_defaults!(app, defaults, segment_keys)
app = Constraints.new(app, blocks)
- name = @scope[:name_prefix] ? "#{@scope[:name_prefix]}#{options[:as]}" : options[:as]
-
- @set.add_route(app, conditions, requirements, defaults, name)
+ @set.add_route(app, conditions, requirements, defaults, options[:as])
self
end