我的問題是我無法從我的mongodb數據庫中檢索數據......而且我不知道爲什麼。無法從集合中檢索數據
我可能做錯了什麼,這裏有一個小小的賭注,它不起作用。
var Db = require('mongodb').Db,
Server = require('mongodb').Server;
var db = new Db('akemichat', new Server('localhost', 27017), {w:1});
db.open(function (err, p_db) {
db = p_db;
});
db.collection('rooms', function (err, collection) {
if (!err) {
collection.find().toArray(function(err, items) {
items.forEach(function(room) {
console.log('hello'); // Never call...
});
});
} else {
console.log(err);
}
});
請注意,我在我的數據庫有數據顯示如下
➜ akemichat git:(master) ✗ mongo
MongoDB shell version: 2.4.7
connecting to: test
> use akemichat
switched to db akemichat
> db.rooms.find()
{ "name" : "home", "_id" : ObjectId("527008e850305d1b7d000001") }
感謝您的幫助!
注意:示例程序永遠不會結束,我也不知道爲什麼......也許是因爲連接永遠不會關閉,但如果我叫db.close()
在toArray
回調,它永遠不會被調用,因爲回調從未happends。
試着將你的集合'find'移動到''open''事件回調的回調函數中。 – WiredPrairie