У меня есть документы с несколькими полями, включая массив других документов. Я могу успешно запросить мои целевые документы и извлечь большинство полей, но по какой-то причине я не могу получить массивы.Выбор полей массива из результатов Mongoose
Вот небольшой отрывок о том, как я запрашивая документы и извлечения полей:
Asset.findOne({
project: asset.project,
ip: asset.ip
}, function(err, match) {
if (err) { return next(err); }
if (match) {
console.log(match);
console.log(match.project);
console.log(match.traffic);
});
});
А вот пример лога консоли:
{ __v: 0,
project: 'test',
traffic:
[ { rport: 39110,
protocol: 'tcp',
destination: '10.0.7.30',
lport: 50 },
{ rport: 49123, protocol: 'tcp', source: '10.0.7.29', lport: 21 } ],
mac: 'update',
ip: '10.0.7.27',
_id: 568fbd22ca70246a168d45aa }
test
undefined
Как вы можете видеть console.log(match)
дает нам весь документ. В этом документе есть поле project
, которое я могу получить с match.project
. Однако match.traffic
возвращает undefined
. Как вы можете видеть, в возвращаемом документе определенно есть поле типа traffic
.
Как получить доступ к массивам из моих документов?