在玉石模板中打印猫鼬收藏品;只得到一份文件

时间:2016-10-21 21:42:18

标签: javascript node.js mongoose

我是Web开发的新手,并想知道为什么mongoose的 cursor 方法只返回集合中的第一个文档,而不是所有文档?

我的目标是将这些文件传递给玉石模板。

我正在使用MongoDB和Express

代码:

var array = [];
var stream = MyModel.find({}).cursor();

stream.on('data',function(task){
    array.push(task)
});

stream.on('error', function(err){
    //Handle error
});

stream.on('close', function(){
res.render('dashboard', { title: 'Dashboard', csrfToken: req.csrfToken(), array: array});
});

由于我是新手,因此我的“代码行话”可能不会被发现,所以我很乐意在必要时指定。

1 个答案:

答案 0 :(得分:0)

您可以尝试类似

的内容
MyModel.find({},function(err,docs){
 res.render('dashboard', { title: 'Dashboard', csrfToken: req.csrfToken(), array: docs});
});

根据mongoose doc,您可以附加回调查询,因此它会将光标转换为文档数组。