Пн goose, изменить значение в массиве - PullRequest
0 голосов
/ 04 мая 2020

Я пытаюсь обновить значение в массиве, я пытался сделать это следующим образом: Пн goose, обновить значения в массиве объектов

Но это не похоже работать для меня:

let myLessonDB = await myLessonSchema.findById(req.params.id);

myLessonDB.update(
    { 'lessons.lesson': req.body.lessonID },
    { $set: { 'lessons.$.present': true } }
);

myLessonDB вернуть это:

{"_id":"5eafff00726616772ca852e2",
"lessons":[{"level":"1","present":false,"lesson":"5eb00211154ac86dc8459d6f"}],
"__v":0}

Я пытаюсь изменить значение в уроках по идентификатору урока, как показано, но это не работает.
Нет ошибок или что-то вроде того, что он не может найти объект в массиве

Кто-нибудь знает, что я делаю неправильно?

1 Ответ

1 голос
/ 04 мая 2020
let myLessonDB = await myLessonSchema.findById(req.params.id);

myLessonDB.lessons.map(oneLes => {
  if(oneLes.lesson == req.body.lessonID){
    oneLes.present = true;
  }
})

myLessonDB.save().then( finalLesson => {
  console.log(finalLesson);
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...