【发布时间】:2017-07-22 12:18:36
【问题描述】:
我在 mongo 数据库中有条目,其中包含每日条目,我试图在数组中查找特定条目。例如,尝试使用 mongoose 在日期为该用户查找可口可乐。
"_id": ObjectId("ID"),
"user_id": ObjectId("ID"),
"date": today,
"snacks":
[
{
"nutrients": [{...}],
"servings": 1,
"name": "Coca-Cola"
}
]
user_food.find({user_id : req.session.user_id, date: today}, {snacks:{[name:{"Coca-Cola"}]}}
我可以使用以下查询按日期查询和检索完整条目:
user_food.findOne({user_id : req.session.user_id, date: today}, function (err, diary) {...});
我唯一的问题是仅通过名称获取特定条目对象:snack - name。
【问题讨论】:
-
您可以过滤零食数组,这将返回与名称有关的数组(在本例中为可口可乐)
obj. snacks.filter((snackItem) => snackItem.name === 'Coca-Cola')
标签: javascript node.js mongodb mongoose database