次のクエリが機能しないようです。
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 AND subscribers.level = 'owner' であるすべてのドキュメントを検索したい
記述されたクエリは、subscribers.user = req.user._id または level = 'owner' のサブスクライバーが存在するすべてのサブドキュメントを返します。明確にするために、サブドキュメントにsubscribers.user = req.user._idがあり、同じサブドキュメントにsubscribers.level = 'owner'があるグループのみが必要です。
$and と $elemMatch のすべての方法を試しましたが、取得できません。助けてくれてありがとう!