Navigation Menu

Skip to content

Commit

Permalink
Revert "Merge pull request #12413 from arthurnn/inverse_of_on_build"
Browse files Browse the repository at this point in the history
This reverts commit ccd11d5, reversing
changes made to 54c05ac.

Reason: This caused a regression when the associated record is created
in a before_create callback. See
#12413 (comment)
  • Loading branch information
rafaelfranca committed Oct 10, 2013
1 parent fbc69ac commit 38aefa5
Show file tree
Hide file tree
Showing 4 changed files with 2 additions and 10 deletions.
6 changes: 0 additions & 6 deletions activerecord/CHANGELOG.md
@@ -1,10 +1,4 @@
## unreleased ##
* Move .set_inverse_instance call to association.build_record method. Everytime a new record is build
using the association, we need to try to set the inverse_of relation.

Fixes #10371.

*arthurnn*

* When calling the method .find_or_initialize_by_* from a collection_proxy
it should set the inverse_of relation even when the entry was found on the db.
Expand Down
1 change: 0 additions & 1 deletion activerecord/lib/active_record/associations/association.rb
Expand Up @@ -240,7 +240,6 @@ def build_record(attributes, options)
skip_assign = [reflection.foreign_key, reflection.type].compact
attributes = create_scope.except(*(record.changed - skip_assign))
record.assign_attributes(attributes, :without_protection => true)
set_inverse_instance(record)
end
end
end
Expand Down
Expand Up @@ -350,6 +350,7 @@ def add_to_target(record)
end

callback(:after_add, record)
set_inverse_instance(record)

record
end
Expand Down
Expand Up @@ -125,10 +125,8 @@ def test_parent_instance_should_be_shared_with_newly_built_child
end

def test_parent_instance_should_be_shared_with_newly_created_child
m = Man.create
m = Man.find(:first)
f = m.create_face(:description => 'haunted')

assert_equal m.object_id, f.man.object_id
assert_not_nil f.man
assert_equal m.name, f.man.name, "Name of man should be the same before changes to parent instance"
m.name = 'Bongo'
Expand Down

0 comments on commit 38aefa5

Please sign in to comment.