繁体   English   中英

Express.js collection.find()返回对象

[英]Express.js collection.find() return Object

我想显示存储在mongodb中的每个文档。 我尝试了以下代码,这些代码仅获取collection.find()并通过res.send()显示

router.get('/index', function(req,res){
var db = req.db
var collection = db.get('usercollection')

var display = util.inspect(collection.find()));
res.send(display);
});

我希望它能显示存储在mongodb中的实际文档。 但是,它显示了这种对象格式:

{cold:{manager:{driver:[Object], helper:[Object], collection:[Object].....

显示原始的mongodb文档是否还需要其他步骤?

如果您使用的库是官方的10gen库 ,那么您不能简单地输出collection.find()而不将其展开。 对于较小的数据集,最简单的方法是

collection.find().toArray(function(err, results) {
  if (err) {
      // do something error-y
  } else {
      res.send( results );
  }
});

如果您发布更多的代码,并使用正在使用的库标记您的问题,您将可以获得更多有针对性的帮助。 如果您使用的库返回一个promise ,这可能是您释放它的方式:

collection.find().then(function(results){
    res.send(results);
}).catch(function(err){
    console.error(err);
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM