【发布时间】:2018-09-12 10:24:34
【问题描述】:
我正在使用 MongoDB,我正在尝试根据其 _id 以及所有同级元素来获取特定对象。例如我的数组如下所示:
"blogs": [
{
"body": "default valuee",
"header": "another first",
"_id": "1234"
},
{
"body": "second default value",
"header": "second",
"_id": "5678"
}
]
我正在尝试获取 1234 的 _id 旁边的值(因此只是该对象的 body、header 和 _id 字段)。我尝试了一些 Mongo 查询,但没有这样的运气。任何帮助都会很棒,干杯
我的功能是:
module.exports = function findBlog(db, id, callback){
var UserCollection = db.collection('users') //connect to business collection
UserCollection.findOne({ 'blogs._id': id }, {body: 1, header: 1, _id: { $elemMatch: { _id: id}}},function (err, user) {
if (err){
return callback({response: "3"})
}else if(!user){
return callback({response: "4"})
}else {
return callback({response: "2",data:user.blogs})
}
});
}
【问题讨论】:
-
您使用的是任何特定语言还是仅使用 CLI?看看 MongoDB 文档specify-equality-condition
-
嗨,我正在使用 NodeJs、Express、mongoose 作为后端。我正在尝试为我的 findblog 函数编写查询
-
您能否编辑您的问题并添加您目前拥有的代码(用于您的 findBlog 功能)?
-
我刚刚添加了函数
-
你有博客方案吗?为什么要通过用户集合通过 id 获取特定博客?
标签: node.js mongodb express mongoose mongodb-query