#javascript #mongodb #mongoose #mongodb-query #aggregate
Вопрос:
У меня есть такой объект, как этот
const obj = {'id_1': 'data_1', 'id_2': 'data_2'....}
И у меня есть такой агрегированный запрос, как этот:
models.dummy.aggregate(
[
{ $match: findQuery },
{
$project: {
id: 1,
tId: 1,
quantity: 1,
status: 1,
notes:
}
}
]);
Теперь здесь для notes
поля в $project я хочу сохранить результат obj['tId']
для него. Я не могу понять, как мне получить доступ к объекту obj
в агрегированном запросе и использовать tId
его для связи notes
поля со значением.
Ожидаемый результат для notes
notes: obj[tId]
// O/P:
[
{
notes: 'data_1';
...
},
{
notes: 'data_2';
...
}
...
]
Комментарии:
1. просто скажи
notes: $tId
2. @varman на самом деле я хочу получить доступ к значению ключа
tId
отobj
.obj[tId]
3. можете ли вы обновить вопрос, который показывает tId и ожидаемый результат
4. Согласно docs.mongodb.com/manual/reference/operator/aggregation/project/… это кажется невозможным.
5. Если вы хотите вставить данные от клиента в результат конвейера агрегации, это также невозможно, но вы можете собрать нужный набор результатов на клиенте.