Я пытаюсь обновить значение объекта, используя $ set для передачи объекта во вложенный элемент массива, однако обновленный элемент является первым, а не элементомодин я запрашиваю.Я не уверен, что я делаю не так.
Схема
const storySchema = new mongoose.Schema({
//some fields
stages: [{
//some fields
events: [{
author: {
type: Schema.Types.ObjectId,
ref: 'User',
required: true
},
body: {
type: String,
required: true,
trim: true
}
}]
}]
})
Маршрут обновления в экспресс
Story.findOneAndUpdate({ 'stages.events._id': req.params.eventId }, {
'$set': {
'stages.0.events.$': req.body.event
}
}, {
new: true,
runValidators: true
})