title: Rails destroy callbacks for child records not firing on parent update
body: <p>I'm seeing an issue where destroy callbacks on a child record are not being fired when deleting the child record of a parent model. This issue emerged when updating records from a form, though I don't think that's relevant.</p>
  
  <pre><code>class Job
    has_many :assignments, dependent: :destroy
    has_many :scheduled_assignments, -&gt; { scheduled }, class_name: 'Assignment'
  
    accepts_nested_attributes_for :scheduled_assignments, dependent_destroy: true
  end
  
  
  class Assignment
    belongs_to :job
  
    after_destroy :call_me
    after_save :call_me
  
    def call_me
      puts "I got called"
    end
  end
  
  job = Job.create
  job.update({ scheduled_assignment_ids: [1] })
    # a scheduled assignment is created, and the after_save 
    # callback is called in assignment
  
  job.update({ scheduled_assignment_ids: [] })
     # the scheduled assignment is deleted, 
     # but the after_destroy callback is not fired
  </code></pre>
  
  <p>Because the Rails doc mention the child record should be deleted with a 'destroy' action, not 'delete', I'd expect callbacks to be fired on the <code>Assignment</code> object being deleted.</p>