method
remove_target!
rails latest stable - Class:
ActiveRecord::Associations::HasOneAssociation
remove_target!(method)private
No documentation available.
# File activerecord/lib/active_record/associations/has_one_association.rb, line 95
def remove_target!(method)
case method
when :delete
target.delete
when :destroy
target.destroyed_by_association = reflection
if target.persisted?
target.destroy
end
else
nullify_owner_attributes(target)
remove_inverse_instance(target)
if target.persisted? && owner.persisted? && !target.save
set_owner_attributes(target)
raise RecordNotSaved.new(
"Failed to remove the existing associated #{reflection.name}. " "The record failed to save after its foreign key was set to nil.",
target
)
end
end
end