aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_controller/resources.rb
diff options
context:
space:
mode:
Diffstat (limited to 'actionpack/lib/action_controller/resources.rb')
-rw-r--r--actionpack/lib/action_controller/resources.rb8
1 files changed, 6 insertions, 2 deletions
diff --git a/actionpack/lib/action_controller/resources.rb b/actionpack/lib/action_controller/resources.rb
index bb92684e5c..767d4c400a 100644
--- a/actionpack/lib/action_controller/resources.rb
+++ b/actionpack/lib/action_controller/resources.rb
@@ -375,12 +375,16 @@ module ActionController
end
def map_associations(resource, options)
+ path_prefix = "#{options.delete(:path_prefix)}#{resource.nesting_path_prefix}"
+ name_prefix = "#{options.delete(:name_prefix)}#{resource.nesting_name_prefix}"
+ namespace = options.delete(:namespace)
+
Array(options[:has_many]).each do |association|
- resources(association, :path_prefix => resource.nesting_path_prefix, :name_prefix => resource.nesting_name_prefix)
+ resources(association, :path_prefix => path_prefix, :name_prefix => name_prefix, :namespace => namespace)
end
Array(options[:has_one]).each do |association|
- resource(association, :path_prefix => resource.nesting_path_prefix, :name_prefix => resource.nesting_name_prefix)
+ resource(association, :path_prefix => path_prefix, :name_prefix => name_prefix, :namespace => namespace)
end
end