2012-07-06 78 views
0

我想了解更多aboute node.js(表達框架)和mongodb(官方驅動程序)。從mongodb打印查詢問題

我有這個代碼

db.open(function(err,db){ 
    if(!err){ 
     console.log ('we are connected'); 

     db.collection('post',function(err,collection){ 

     collection.find(function(err,posts){ 
      if(!err){ 
      res.json(posts); 
      } 
     }); 

    }); 

    } 
}); 

應該查詢數據庫,並打印結果。但我無法弄清楚如何以json格式將查詢打印到瀏覽器中。

我已經嘗試了JSON.stringify,但沒有任何結果:(

這樣做:

collection.find().toArray(function(err,posts){ 
     if(!err){ 
     res.json(posts); 
     } 
    }); 

(注意指定者功能)它的工作原理,但我聽說,這是一個不好的做法,因爲浪費了大量的內存。

有沒有做這件事的任何更有效的方法?

回答

1

您也可以使用光標的方法.each().nextObject()一次對單個文檔進行操作,而不會像toArray()那樣將所有內容都拉入內存中。

詳情點擊這裏:https://github.com/mongodb/node-mongodb-native/#find

+0

使用。每次我可以CONSOLE.LOG(職位),但我不能使用res.send(職位)..我如何使用每個。函數將所有帖子打印到json? – gaggina 2012-07-07 00:44:04