mongoose – 如何挖掘模式中间件到'init'事件?

在Mongoose文档中build议我应该能够使用插入到“init”钩子的中间件来控制stream。

但是,迄今为止,我只有通过“保存”和“validation”才能取得成功。

当我做这样的事情时,这些中间件都不会被调用:

MySchema.post( "init", function (next) { console.log("post init") }); MySchema.pre( "init", function (next) { console.log("pre init") }); 

我错过了什么吗?

事实certificate,在创build新模型时,“init”事件/钩子不会被触发,只有在从数据库加载现有模型时才会触发它。 看来我应该使用pre / validate钩子来代替。

我已经成功地使用了MySchema.post('init', function() { ... });等中间件MySchema.post('init', function() { ... }); 与Mongoose,然后执行find查询中加载的每个模型实例。 请注意,这个中间件没有next参数,它应该在完成时返回。