Class: MassiveRecord::ORM::Persistence::Operations::Embedded::Destroy

Inherits:
Object
  • Object
show all
Includes:
MassiveRecord::ORM::Persistence::Operations, OperationHelpers
Defined in:
lib/massive_record/orm/persistence/operations/embedded/destroy.rb

Instance Attribute Summary

Attributes included from MassiveRecord::ORM::Persistence::Operations

#klass, #options, #record

Instance Method Summary collapse

Methods included from MassiveRecord::ORM::Persistence::Operations

atomic_operation, destroy, force, #initialize, insert, reload, suppress, suppressed?, update

Methods included from OperationHelpers

#embedded_in_proxies, #embedded_in_proxy_targets, #inverse_proxy_for, #raise_error_if_embedded_in_proxy_targets_are_missing, #row_for_record, #update_embedded

Instance Method Details

#executeObject



11
12
13
14
15
16
17
18
19
20
# File 'lib/massive_record/orm/persistence/operations/embedded/destroy.rb', line 11

def execute
  embedded_in_proxies.each do |proxy|
    if proxy.load_proxy_target && proxy.load_proxy_target.persisted?
      inverse_proxy_for(proxy).delete(record)
      update_embedded(proxy, nil)
    end
  end

  true
end