aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/associations/association.rb
diff options
context:
space:
mode:
authorAndrew Kaspick <andrew@redlinesoftware.com>2011-12-14 20:13:03 -0600
committerAndrew Kaspick <andrew@redlinesoftware.com>2011-12-14 20:13:03 -0600
commit774ff18c095145f544e845dbb940378546748969 (patch)
tree2790c29a416f4492690222fd36b6f4f500b8a942 /activerecord/lib/active_record/associations/association.rb
parentb6105b0b59073efe7d8c5fad0b2246d0534030e1 (diff)
downloadrails-774ff18c095145f544e845dbb940378546748969.tar.gz
rails-774ff18c095145f544e845dbb940378546748969.tar.bz2
rails-774ff18c095145f544e845dbb940378546748969.zip
Allow nested attributes in associations to update values in it's owner object. Fixes a regression from 3.0.x
Diffstat (limited to 'activerecord/lib/active_record/associations/association.rb')
-rw-r--r--activerecord/lib/active_record/associations/association.rb2
1 files changed, 2 insertions, 0 deletions
diff --git a/activerecord/lib/active_record/associations/association.rb b/activerecord/lib/active_record/associations/association.rb
index d1e3ff8e38..861dda618a 100644
--- a/activerecord/lib/active_record/associations/association.rb
+++ b/activerecord/lib/active_record/associations/association.rb
@@ -230,6 +230,8 @@ module ActiveRecord
end
def build_record(attributes, options)
+ attributes = (attributes || {}).reverse_merge(creation_attributes)
+
reflection.build_association(attributes, options) do |record|
record.assign_attributes(
create_scope.except(*record.changed),