我正在做一个包含子项目的 Node.js 项目。一个子项目将有一个 Mongodb 数据库,Mongoose 将用于包装和查询数据库。但问题是
- Mongoose 不允许在单个 mongoose 实例中使用多个数据库,因为模型是建立在一个连接上的。
要使用多个 mongoose 实例,Node.js 不允许多个模块实例,因为它在
require()
. 我知道在 Node.js 中禁用模块缓存,但我认为这不是一个好的解决方案,因为它只需要猫鼬。我尝试在猫鼬中使用
createConnection()
andopenSet()
,但这不是解决方案。我试图深度复制 mongoose 实例(http://blog.imaginea.com/deep-copy-in-javascript/)以将新的 mongoose 实例传递给子项目,但它会抛出
RangeError: Maximum call stack size exceeded
.
我想知道无论如何使用多个数据库和猫鼬或任何解决这个问题的方法?因为我认为猫鼬非常容易和快速。或任何其他模块作为建议?