Есть ли способ получить доступ к переменным и их данным в конвейере из объединенной / найденной коллекции? В свойстве $ addFields я хотел бы передать переменные в функцию, которая возвращает новые данные на основе этих значений.
await PoolModel.aggregate([
{
$match: {
eventId: { $eq: eventIds[0] }
}
},
{
$lookup: {
from: 'results',
as: 'races',
let: { userId: '$userId' },
pipeline: [
{
$match: {
$expr: {
$and: [
{ $eq: ['$eventId', eventIds[0]] }
]
}
}
},
{
$addFields: {
results: {
newsPaper: functionToReturnData(startNumber, horseName, raceId)
}
}
}
]
}
}
]);
Результат от агрегата выглядит следующим образом после его выполнения, и мне нужно получить доступ к ключу / значениям в массиве результатов (исходя из объединенной коллекции)
[
{
"_id": "5e1ebbc6cffd4b042fc081ab",
"eventId": "id888",
....
"checked": true,
"races": [
{
"_id": "5e202321cffd4b042fc0ab3c",
"eventId": "id888",
"__v": 0,
"results": [
{
"startNumber": 1,
"horseName": "horse1",
"raceId": "44",
"_id": "5e26f427cbab3e1237078e9b",
"newsPaper": "Here should returned data be"
},
{
"startNumber": 8,
"horseName": "horse1",
"raceId": "45",
"_id": "5e26f427cbab3e1237078e9a",
"newsPaper": "Here should returned data be" },
{
"startNumber": 7,
"horseName": "horse1",
"raceId": "46",
"_id": "5e26f427cbab3e1237078e99",
"newsPaper": "Here should returned data be" },
{
"startNumber": 7,
"horseName": "horse1",
"raceId": "47",
"_id": "5e26f427cbab3e1237078e98",
"newsPaper": "Here should returned data be" },
]
}
]
}
]