Почему FindOneAndUpdate не работает в mon goose при использовании $ in - PullRequest
0 голосов
/ 25 марта 2020

Я пытаюсь выполнить следующий запрос, чтобы обновить одну из моих коллекций, но она не работает

    const result = await users.findOneAndUpdate({
    participants: {
        "$in": [participant.one, participant.two]
    },
    time:Date.now()


   });
   console.log(result, " result ")

Я получаю следующую ошибку

 Cast to [string] failed for value "[{"$in":["****","****"]}]" at path "participants"

1 Ответ

1 голос
/ 26 марта 2020

participants является массивом, поэтому вы должны использовать операторы запросов к массиву .

Если вы хотите отфильтровать документы, для которых массив participants содержит все данные элементы, используйте

participants: {
    "$all": [participant.one, participant.two]
},
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...