2012-05-13 70 views
0

嗨我一直試圖讓這個代碼工作,但我無法弄清楚我的代碼有什麼問題。如果連接處於打開狀態,它應該打印出「here ...」。另外,我看着「mongod」的控制檯,它顯示打開了一個連接但沒有打印出來。如何正確連接mongodb和Node.js?

 

var Db = require('mongodb').Db; 
var Server = require('mongodb').Server; 
var client = new Db('test1', new Server('127.0.0.1', 27017, {})); 


var Vocabulary = function() { 

    function get(german_vocab) { 
     client.open(function(err, pClient) { 
      console.log("here...") 
      client.collection('test1', function(err, collection) { 
       collection.insert({name:"myself"}); 
      }); 

      client.collection.find().toArray(function(err, results) { 
       console.log(results); 
      }); 
     }); 

    } 

    return { 
     get : get 
    }; 
} 

module.exports = Vocabulary; 


var vocab = Vocabulary(); 
vocab.get("Ich"); // Nothing shows in this line. 

 

此外,當我檢查有沒有創建數據庫。我認爲一旦插入了某些東西,mongodb數據庫就會被懶惰地創建出來?

非常感謝。

回答

0

docs他們描述了一個函數db.createCollection([[name[, options]], callback),你試過嗎?也許你應該考慮使用諸如mongoose之類的東西,這是一個不錯的第三方庫,用於處理mongodb。

我希望我能幫忙! :)

+0

我會嘗試貓鼬以及。感謝您的建議。 – toy

+0

但我認爲mongodb已創建「測試」集合作爲默認值? – toy

+0

它創建一個「測試」數據庫而不是「測試」集合。 :) – jsbeckr