Node.js中的Mongodb / Mongoose通过嵌套文档的id查找

时间:2011-06-19 19:07:22

标签: orm mongodb node.js express mongoose

由于某种原因,当我搜索嵌套文档的id时,我找不到文档。我可以轻松地执行其他查找,以便这两个工作:

User.findOne({"_id" : some_id}, function(err,user){}
User.findOne({"arrayOfNestedDocs.value":someValue}, function(err,user){}

但是通过嵌套文档的id查找不起作用:

User.findOne({"arrayOfNestedDocs._id" : some_id}, function(err,user){}

我可以在mongo shell中执行搜索,但不能通过mongoose执行搜索。任何想法都会有所帮助。

2 个答案:

答案 0 :(得分:1)

我已将其添加为project

中的问题

答案 1 :(得分:0)

如果您正在尝试查找嵌入式文档,则语法为:

User.findOne({_id: id}, function(err, user) {
    var embeddedDoc = user.embeddedDocs.id('embeddedDocId');
});