diff options
Diffstat (limited to 'actionpack/lib')
-rw-r--r-- | actionpack/lib/action_controller/resources.rb | 8 |
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 |