This is a plugin for Mongoose to have an extra autoincr_id
number attribute that autoincrements. This plugin is created to support Sphinx.
This plugin will also create an extra table counters
or named by you
to keep track of the counters across all tables.
npm install mongoose-autoincr
First, you have to make sure that you initialize the plugin first. var mongoose = require("mongoose"); , mongooseIncr = require("mongoose-incr");
var db = mongoose.createConnection("mongodb://localhost/test");
mongooseIncr.loadAutoIncr(db); // Pass the Mongoose Connection
Now, when you define your schema, make sure you include the plugin:
var UserSchema = new Schema({
username: String
});
UserSchema.plugin(mongooseIncr.plugin, {modelName: 'User'});
-
loadAutoIncr({counterName: name})
:counterName
is optional, default ascounters
, this is the table name that is created to store counters for different tables. -
plugin({modelName: name})
:modelName
is required, this is used to store in the field of the counters table. Make sure that it is unique.
To run tests: ./node_modules/expresso/bin/expresso tests/*.test.js
MIT License