#mongodb #mongoose #mongoose-schema #mongoose-populate
Вопрос:
привет, я хочу изменить имя _id на что-то другое после заполнения моих полей, но добавление полей или проекция не будут работать с заполнением.
await this.Model.findOne({ username }).populate({
path: 'tasks',
match: { folder: { $ne: null } },
$addFields: { id: '$_id' },
select: { _id: 0 },
})
есть ли способ изменить поля в конвейере? Я взглянул на виртуалы, но я не хотел, чтобы они меняли способ ссылки между коллекциями
Комментарии:
1. Вы можете присвоить значение поля другому имени поля — в запросе агрегации или в проекции.
2. @prasad_ проекция не будет работать при заполнении
3. использовать
$lookup
и$project