mirror of
https://github.com/atlanticbiomedical/biomedjs.git
synced 2025-07-02 00:47:26 -04:00
43 lines
779 B
JavaScript
43 lines
779 B
JavaScript
![]() |
|
||
|
var mongoose = require('mongoose')
|
||
|
var Schema = mongoose.Schema;
|
||
|
|
||
|
mongoose.connect('mongodb://localhost/example-hooks');
|
||
|
|
||
|
var schema = Schema({ name: String });
|
||
|
schema.post('save', function () {
|
||
|
console.log('post save hook', arguments);
|
||
|
})
|
||
|
|
||
|
schema.pre('save', function (next) {
|
||
|
console.log('pre save');
|
||
|
next();
|
||
|
})
|
||
|
|
||
|
var M = mongoose.model('Hooks', schema);
|
||
|
|
||
|
var doc = new M({ name: 'hooooks' });
|
||
|
doc.save(function (err) {
|
||
|
console.log('save callback');
|
||
|
mongoose.disconnect();
|
||
|
})
|
||
|
|
||
|
|
||
|
////
|
||
|
|
||
|
Model.on('init', cb);
|
||
|
Model.on('remove', cb);
|
||
|
Model.on('update', cb);
|
||
|
// Model.update() and doc.save()
|
||
|
Model.on('insert', cb);
|
||
|
Model.on('save', cb);
|
||
|
|
||
|
var promise = Model.save(doc, options, callback);
|
||
|
|
||
|
//
|
||
|
|
||
|
var schema = new Schema(..);
|
||
|
schema.pre('save', function (next, done) {
|
||
|
|
||
|
})
|