loopback v3 mixin to add support for sequential property.
- install via npm.
npm install loopback-mixin-mongo-seq
- update
server.js
to load mixin.
const loopbackMixinMongoSeq = require('loopback-mixin-mongo-seq');
loopbackMixinMongoSeq(app, {
dataSource: 'MongoDS', modelName: 'Counter'
});
- add mixins property to the required model.
"mixins": {
"Seq" : {
"propertyName": "ID",
"step": 1,
"initialVal": 1,
"readOnly": true,
"definition": {
"index": { "unique": true }
}
}
}
propertyName: property name, defaults to ID.
step: defaults to 1.
initialVal: value to start counter from if the sequence doesn't exist, defaults to the highest record in the target model if not found then 1.
readOnly: if the value should be protested against changes, defaults to true.
definition: property definition ( can be used to add index to property), defaults to {}.
DEBUG='loopback:mixin:mongo-seq'