【发布时间】:2016-11-30 12:57:44
【问题描述】:
我正在 nodeJs 中试用 mongoDB,但在 mongodb 服务器上的 db 收集文件遇到问题。服务器设置为窗口服务,因此它已启动并正在运行。我让 nodejs 在运行时连接到它。我做了模拟示例,它可以工作(我认为它设置正确)。
如果我想查看在 nodejs 中创建的集合,它会显示它们。如果我转到 mongodb 服务器数据库(data\db 文件夹),我会看到一个集合已创建。问题是当我打开另一个 cmd.exe 实例时,输入 mongodb 并想查看集合 db.collections-2 中的内容,返回的是 NaN。
我可能做错了,或者有一个我不知道的文件丢失。有人可以给我建议并解释为什么我会得到 NaN。
nodejs代码如下。
var MongoClient=require('Mongodb').MongoClient,format = require('util').format;
var url = 'mongodb://localhost:27017/myproject';
MongoClient.connect(url,function(err,db){
if(err){
console.log(err);
}
else{
console.log("connected to", url );
}
var user1 = {name: 'modulus admin', age: 42, roles: ['admin', 'moderator', 'user']};
var user2 = {name: 'modulus user', age: 22, roles: ['user']};
var user3 = {name: 'modulus super admin', age: 92, roles: ['super-admin', 'admin', 'moderator', 'user']};
collection.find({name: 'modulus user', roles: 'user'}).toArray(function(err, result) {
if (err) {
console.log(err);
} else if (result.length) {
console.log('Found:', result);
} else {
console.log('No document(s) found with defined "find" criteria!');
}
})
db.close()
})
【问题讨论】: