我最近开始研究 MEAN 技术;
我有一个模块 myModule。它具有访问数据库的路线、服务、模型。
我在一个单独的目录中创建了另一个项目 myAnotherModule,并将其“npm link”编辑到 myModule 中。当我尝试在 myAnotherModule 中使用 Mongoose 时,它无法使用正确的凭据访问数据库。
在 myAnotherModule 中的以下代码中,
var db = mongoose.connection.db;
var mongoDriver = mongoose.mongo;
var gfs = new grid(db, mongoDriver);
它没有找到mongoose.connection.db
并且db
未定义。
而如果我在 myModule 中使用这些行,那么代码就可以正常工作。
为什么 myAnotherModule 找不到 mongoose.connection.db
?
npm 链接如何工作?
最佳答案
尝试通过以下方式连接:
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test');
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function callback () {
console.log("h");
});
exports.test = function(req,res) {
res.render('test');
};
关于Node.js - Mongoose 无法访问包含包中的数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46096419/