在mongoose模型级别是否有任何类型的触发器,当成员集合的数量达到100时,它能够设置open field = false的值?
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var listSchema = new Schema({
name: {
type: String,
required: true,
trim: true
},
desc: {
type: String
},
open: {
type: Boolean,
default: true
},
members: [{
userid: {
type: Schema.Types.ObjectId, ref: 'User'
},
prId: {
type: Schema.Types.ObjectId, ref: 'PR'
},
checkedIn: {
type: Boolean
}
}]
});
module.exports = mongoose.model('List', listSchema);
答案 0 :(得分:1)
mongo中没有触发器。很难说为什么你想要在收集达到某种限制时更改文件,可能capped collection是你真正想要的?
new Schema({..}, { capped: { size: 1024, max: 100 } });
size是最大集合大小(以字节为单位),max是可以在集合中插入的最大文档数。