mongoose聚合并在条件满足时删除字段

时间:2015-10-09 18:35:21

标签: node.js mongodb mongoose

我有一个偶尔有空数组的数据模型。我想返回一个删除空数组的查询。这是我到目前为止所做的:

var query = Recipe.aggregate([
    { $match: {'sites': site}},
     { $project:{ 
        '_id':0,
        'data.coupons': 
          {
            $cond: {if:{ $exists: true, $not: {$size: 0} }, then:1, else:0} 
          } 
      }}
]);

目前我正在返回错误MongoError: exception: invalid operator '$exists'。还有另一种检查空数组的方法吗?如果符合条件,我想保留价值,如果没有,我会拒绝它。

1 个答案:

答案 0 :(得分:0)

您只需使用

即可
<math>