我想在remove
的mongoose ModelB
挂钩内触发pre.save
ModelA
次操作。
基本上每当ModelA
更新ModelB
时,我都需要删除const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const ObjectId = Schema.Types.ObjectId;
const permissionSetSchema = require('./permission-set');
const PermissionSet = mongoose.model('PermissionSet', permissionSetSchema);
const roleSchema = new Schema({
name : { type: String, required: true, unique: true, maxLength: 140 },
description: { type: String, maxLength: 300 },
});
roleSchema.post('update', (next, done) => {
PermissionSet.remove({}, err => {
if (err) { next(err); }
next();
});
});
集合:
这是我试过的,我没有得到错误,但操作永远不会结束:
<p>
答案 0 :(得分:1)
第一个arg就是文件。第二个是下一个回调。 应该是:
roleSchema.post('update', (doc, next) => {
PermissionSet.remove({}, err => {
if (err) { next(err); }
next();
});
});
&#13;