スキーマ内のオブジェクトに、配列の配列内のオブジェクトを設定したいので、2 つの ID を確認する必要があります。アレイごとに 1 つ。
{ _id: 101,
NewsGroup: [ [_id: 102, category: A], [_id: 103, category: B] ] }
Alpha というオブジェクトにカテゴリ A を設定したい
これを試すと:
Model.findById(101).populate('Alpha', 'NewsGroup.category').exec(function(err, Beta) {
req.Zita = Beta ;
console.log( Zita );
});
Aだけでなく、すべてのカテゴリを返します。
私もこれを試しましたが、うまくいきません
.populate({
path: 'Alpha',
match: { 'NewsGroup': { '_id': '102' } },
//match: { 'NewsGroup': { $elemMatch: { '_id': '102' }} },
select: 'category'
})
何か案は?