从 Mongoose 中具有特定属性的数组中获取所有对象
Getting all objects from array with specific property in Mongoose
如果我有这个模式
food = {
name : String,
favouriteFoods : []
}
每个最喜欢的食物元素都是这样的对象
var favoritefood = new Object;
favoritefood.cuisine = 'indian';
favoritefood.flavor = 'spicy';
是否可以查询猫鼬以获取所有收藏的食物对象的风味属性设置为"辣"?
您需要执行aggregate
操作才能将所有辛辣的美食按名称分组。
-
Match
所有的食物,至少有一种辛辣的最喜欢的食物。 -
Unwind
最喜欢的食物阵列。 -
Match
所有放松最喜欢的辛辣食物。 -
Group
食物名称。 -
Project
他们。
守则:
Food.aggregate([
{$match:{"favouriteFoods.flavor":"spicy"}},
{$unwind:"$favouriteFoods"},
{$match:{"favouriteFoods.flavor":"spicy"}},
{$group:{"_id":"$name","spicyFoods":{$push:"$favouriteFoods"}},
{$project:{"_id":0,"name":"$_id","spicyFoods":1}}
],function(err,res){
// console.log(res);
})
相关文章:
- 获取数组的总值
- 按最大值获取数组索引
- React.js如何从js文件中获取数组
- TinyMCE获取数组数据
- 如何获取数组详细信息另一页
- 使用javascript从节点属性获取数组值
- 使用JavaScript获取数组中表单的所有控件
- 获取数组的长度-打印不正确的值
- 正在从JSON对象获取数组
- 什么'获取数组的已定义部分的最快方法是什么?JS
- 如何使用angular指令从html中获取数组
- 如何获取数组中数字的最大出现次数
- 根据优先级获取数组的值
- JAVASCRIPT:获取数组中的值
- 获取数组的元素,无论索引的大小如何
- JavaScript:在XML中搜索节点并从该节点获取数组
- 无法获取数组的长度
- 在数字索引循环中获取数组项的键
- 如何使用JavaScript或jQuery获取数组中选定的optgroup和选项
- Javascript-函数获取数组元素参数未定义/为null