Method: Mongoid::Tasks::Database#remove_undefined_indexes
- Defined in:
- lib/mongoid/tasks/database.rb
#remove_undefined_indexes(models = ::Mongoid.models) ⇒ Hash{Class => Array(Hash)}
Remove indexes that exist in the database but aren’t specified on the models.
118 119 120 121 122 123 124 125 126 127 128 129 130 |
# File 'lib/mongoid/tasks/database.rb', line 118 def remove_undefined_indexes(models = ::Mongoid.models) undefined_indexes(models).each do |model, indexes| indexes.each do |index| key = index['key'].symbolize_keys collection = model.collection collection.indexes(session: model.send(:_session)).drop_one(key) logger.info( "MONGOID: Removed index '#{index['name']}' on collection " + "'#{collection.name}' in database '#{collection.database.name}'." ) end end end |