我正在使用find()
中的mongodb
mongoskin
我想抓两个系列。
/* GET drawingList */
router.get('/drawinglist', function(req, res) {
var db = req.db;
db.collection('drawingList').find().toArray(function (err, items) {
res.json(items);
});
});
// GET drawingQty
router.get('/drawinglist', function(req, res) {
var db = req.db;
db.collection('drawingQty').find().toArray(function (err, items) {
res.json(items);
});
});
我尝试将它们合并在一起,就像这样,
router.get('/drawinglist', function(req, res) {
var db = req.db;
db.collection('drawingList').find().toArray(function (err, items)
db.collection('drawingQty').find().toArray(function (err, items) {
res.json(items);
});
});
但程序不会运行。 连接它的正确方法是什么?
答案 0 :(得分:0)
这是一个JavaScript问题而不是mongoDB问题。在您的示例中,仅返回第二个查询的结果,因为您在两个回调中使用相同的items
变量。第二个将覆盖第一个。
这应该给你一个提示,做什么:
router.get( '/drawinglist', function( req, res ) {
var db = req.db;
db.collection( 'drawingList' ).find().toArray( function( err, items ) {
db.collection( 'drawingQty' ).find().toArray( function( err, items2 ) {
var items3 = items.concat( items2 ); // or however you want to "merge"
res.json( items3 );
});
});
});