一尘不染

如何从猫鼬中删除模型?

node.js

我的意思不是删除一个或多个文件。我的意思是完全删除该模型,以便猫鼬不再意识到它。声明模型后,我不知道如何使猫鼬忘记该模型,以便可以重新创建它。

mongoose.model('Book', bookSchema);
mongoose.model('Book', bookSchema);

目前,上面引发了一个异常。

OverwriteModelError:编译后无法覆盖“ Book”模型。

我希望能够做这样的事情…

mongoose.model('Book', bookSchema);
mongoose.removeModel('Book');
mongoose.model('Book', bookSchema);

…并且没有任何错误。有任何想法吗?


阅读 273

收藏
2020-07-07

共1个答案

一尘不染

试试这个

delete mongoose.connection.models['Book'];

然后重新注册/重新初始化它。它将正常工作

2020-07-07