【发布时间】:2014-06-07 12:56:22
【问题描述】:
我正在使用 mongodb 作为驱动程序运行 node.js。 我有以下问题,
我尝试使用_id数组查询业务集合,如果我尝试如下动态构建查询,我得到长度为0的数组,这是错误的。
myFavoriteBusinessArray.forEach(function (iValue, j) {
var temp = 'mongojs.ObjectId("' + iValue + '")';
objectIdArray.push(temp);
});
var queryObject = {
_id: {
$in: objectIdArray
}
};
db1.db.business.find(queryObject,
function (err, business) {
if (err) res.json(err);
res.json(business);
});
}
else {
res.json({"login": "failed"});
}
如果我尝试以下操作,那么我将得到正确的 3 数组。
db1.db.business.find({_id: { $in: [ mongojs.ObjectId("534fabb10648cd1c1b000002"), mongojs.ObjectId("52d664c15186ad103c000001"), mongojs.ObjectId("534ee1b4b51682bc30000002") ] }},
function (err, business) {
if (err) res.json(err);
res.json(business);
});
谁能指出我哪里出错了?非常感谢。
问候, 赤胆
【问题讨论】:
标签: node.js mongodb mongodb-query mongojs