【发布时间】:2017-06-23 19:27:06
【问题描述】:
我解决了这个问题的作者与其他人作为答案发布的解决方案相同的问题: Unwind empty array in mongodb
这些天我更新了我的 mongodb/mongoose,现在我收到了一个错误:
MongoError:顶级 _id 字段是当前唯一支持排除的字段
由于值为 0,mongo 现在似乎试图从项目中“排除”该字段。
我需要添加一个带有 {value:0} 对象的数组,否则展开后该对象将被忽略。
{ $match: parameter},
{ $unwind : "$items" },
{ $project: {
itemName: '$items.name'},
itemValue : "$items.value",
discount : { $cond : [ { $eq : ["$items.discounts", [] ]}, [ { value : 0} ], '$items.discounts'] }
}},
{ $unwind: "$discount"},
这个问题还有其他/更新的解决方案吗? 感谢您的帮助。
【问题讨论】:
-
您能否edit您的问题包括一些用于测试的示例文档以及这些文档的预期输出?
标签: node.js mongodb mongoose aggregation-framework