2012-07-06 43 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