0.1.4 • Published 10 years ago
mongoose-hook-ensure-indexes v0.1.4
mongoose-hook-ensure-indexes
A mongoose plugin, improving 'Model.ensureIndexes' method, allowing also deletion of unused indexes and reindexing with changed options.
Installation
git clone git@github.com:tarquas/mongoose-hook-ensure-indexes.git mongoose-hook-ensure-indexes
Package
{
"mongoose-hook-ensure-indexes": "0.1.4"
}
Usage
Example:
var
mongoose = require('mongoose'),
ensureIndexes = require('mongoose-hook-ensure-indexes'),
PersonSchema;
PersonSchema = {
name: String,
email: String
};
PersonSchema.index({name: 1});
PersonSchema.index({email: 1}, {unique: true});
PersonSchema.plugin(ensureIndexes, {mongoose: mongoose});
mongoose.model('Person', PersonSchema);
Notes
This plugin must be provided with an exact instance of
mongoose
, where the processing models expected to be processed, inopts
parameter.This plugin makes sure that no other indexes persist on MongoDB collection than those, which specified in Schema. New indexes get created. Obsolete indexes get dropped. Indexes with changed options get recreated and rebuilt.