Module: Mongoid::Persistable::Deletable::ClassMethods

Defined in:
lib/mongoid/persistable/deletable.rb

Instance Method Summary collapse

Instance Method Details

#delete_all(conditions = {}) ⇒ Integer

Delete all documents given the supplied conditions. If no conditions are passed, the entire collection will be dropped for performance benefits. Does not fire any callbacks.

Examples:

Delete matching documents from the collection.

Person.delete_all({ :title => "Sir" })

Delete all documents from the collection.

Person.delete_all

Parameters:

  • conditions (Hash) (defaults to: {})

    Optional conditions to delete by.

Returns:

  • (Integer)

    The number of documents deleted.



130
131
132
133
# File 'lib/mongoid/persistable/deletable.rb', line 130

def delete_all(conditions = {})
  selector = hereditary? ? conditions.merge(discriminator_key.to_sym => discriminator_value) : conditions
  where(selector).delete
end