【发布时间】:2020-06-19 10:35:19
【问题描述】:
在从模式创建模型后,我需要将pre mongoose 中间件添加到模型(不是模式)。
const mongoose = require('mongoose');
const FooSchema = new mongoose.Schema({
foo: String
});
const FooModel = mongoose.model('Foo', FooSchema);
然后在运行时的中间
FooModel.schema.pre('save', myMiddleware);
但是,经过一些调试,我发现所有的中间件都必须在创建模型之前添加。
有没有办法在在模型创建之后添加我的中间件?
【问题讨论】:
-
@SyedAyeshaBebe 谢谢。但它根本没有回答我的问题。
-
您为什么要尝试将架构(并且分配方法挂钩正在修改)修改为现有模型?如果有的话,您可能想注册一个新模型。你应该解释你的意图,而不仅仅是事后的结果。
-
你可以使用
FooModel.schema.post('save', middleware)schema.post -
@AlexandruOlaru 试过了。不适用于
pre -
面临同样的问题。我想在从模式创建模型后添加中间件。有没有什么办法可以在创建模型后注册中间件?
标签: node.js mongoose mongoose-schema