我在mongodb控制台中运行此代码:
var participantsWithoutCategory = db.participant.find({eventId: ObjectId("536d5564e7b237df30b628cc"), category: {$exists: false}});
var event = db.event.find({_id: ObjectId("536556c4eaa237df30b628cc")});
participantsWithoutCategory.forEach(function (entry) {
var userId = new ObjectId("" + entry._id + "");
var user = db.user.find( { _id: userId} );
print("got user: " + user);
});
并且打印的结果是:
got user: DBQuery: Oc5mjdKkhyDb3r6rhnzw.user -> { "_id" : ObjectId("536d8586ebb237df30b62bcb") }
所以我只是想知道如何获取实际的对象而不是指向它的指针?
如果我尝试获取其任何属性,例如user.dob,我会得到一个null :(
答案 0 :(得分:1)
事实证明mongo如何表示查询没有结果...我已经通过使用对象的正确属性修复了它而不是_id,但是超出了这一点
有趣的是,当find()没有返回任何内容时,mongo会返回DBQuery。