【发布时间】:2013-03-04 18:04:15
【问题描述】:
我似乎无法使以下查询起作用:
Group.find({ $or: [ {'groupOwner': req.user._id }, { 'subscribers.user': req.user._id, 'subscribers.level': 'owner' } ] }, 'groupName', { sort: ['groupName', 'ascending'] }, function(err, groups) {
我的架构有一个组,订阅者作为子文档数组。我想找到 groupOwner 与传递的用户 ID 匹配的所有组(工作正常),以及subscribers.user = req.user._id ANDsubscribers.level = 'owner' 的所有文档
书面查询返回所有子文档,其中subscribers.user = req.user._id 或有一些订阅者级别='所有者'。需要明确的是,我只想要子文档有subscribers.user = req.user._id 并且相同的子文档有subscribers.level = 'owner' 的组。
我已经尝试了各种方式的 $and 和 $elemMatch,但就是无法获得它。感谢您的帮助!
【问题讨论】: