Sha256: 1a55903516e2cd33e40310838d51e77f9368cba85098a6261a7e4f7d41f0e509

Contents?: true

Size: 629 Bytes

Versions: 5

Compression:

Stored size: 629 Bytes

Contents

module Mongoid
  module Relations
    module Cascading
      # Perform all cascading deletes, destroys, or nullifies. Will delegate to
      # the appropriate strategy to perform the operation.
      #
      # @example Execute cascades.
      #   document.cascade!
      #
      # @since 2.0.0.rc.1
      def cascade!
        cascades.each do |name|
          if !relation_metadata || !relation_metadata.versioned?
            if meta = relations[name]
              strategy = meta.cascade_strategy
              strategy.new(self, meta).cascade if strategy
            end
          end
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
mongoid-versioning-1.2.0 lib/mongoid/core_ext/relations/cascading.rb
mongoid-versioning-1.1.0 lib/mongoid/core_ext/relations/cascading.rb
mongoid-versioning-1.0.0 lib/mongoid/core_ext/relations/cascading.rb
mongoid-versioning-1.0.0.beta2 lib/mongoid/core_ext/relations/cascading.rb
mongoid-versioning-1.0.0.beta1 lib/mongoid/core_ext/relations/cascading.rb