在命令行中访问远程mongoDB库,创建collection是可以的,但是在代码中创建总会报错
我在命令行中远程连接一个mongoDB的库,有用户和权限控制,在命令行中是可以创建collection的,但在代码中,用同样的账户链接同样的库,创建集合时没有成功,报错:
at Function.MongoError.create (/var/www/user-profiler/node_modules/mongoose/node_modules/mongodb/node_modules/mongodb-core/lib/error.js:31:11)
at queryCallback (/var/www/user-profiler/node_modules/mongoose/node_modules/mongodb/node_modules/mongodb-core/lib/cursor.js:212:36)
at /var/www/user-profiler/node_modules/mongoose/node_modules/mongodb/node_modules/mongodb-core/lib/connection/pool.js:455:18
at nextTickCallbackWith0Args (node.js:420:9)
at process._tickCallback (node.js:349:13)'''
想请教一下大神,如何解决,以及问题的原因。谢谢。
3 回复
我只知道admim表和collection表用户名密码是分开的。。。昨天还用mongoose连接成功过。。
来自酷炫的 CNodeMD
看看是不是两种连接方式用的authDB不一样
贴下创建那块的代码; 还有 跑错的Exception没看到哦
下面是一段成功的代码你可以看看,你使用的api是否有问题
var mongoose = require('mongoose');
var db = mongoose.createConnection('localhost', 'test');
var schema = mongoose.Schema({ name: 'string' });
var Cat = db.model('Cat', schema);
var kitty = new Cat({ name: 'Zildjian' });
kitty.save(function (err) {
if (err) // ...
console.log('meow');
});