Привет! Принимаю на вход массив строк и после хочу добавить каждый элемент в массив в документе, но только если элемента не существует в уже созданном массиве(в mongodb), т.е. если в документе уже есть массив со значениями 1,2,3,4, а я на вход подаю 2,3,5,6, то 5 и 6 должны добавиться. Пробовал добавлять через
"$addToSet"
, но оно хорошо работает, только если массив в mongodb имеет типы наподобие
int, string
и т.д., а у меня там объекты и в итоге он забивает на то, что элемент уже есть в базе.
Пример входных данных ( должны добавиться только
"another@mail.ru", "check@www.ru"
):
["a@mail.ru", "z@mail.ru", "adawdawd@mail", "another@mail.ru", "check@www.ru"]
Документ в MongoDB:
{
"username": "testuser",
"receiver_list": [{
"_id": "ObjectID(\"619304749cf306ab40a95310\")",
"receiver": "a@mail.ru"
}, {
"_id": "ObjectID(\"619304749cf306ab40a95311\")",
"receiver": "z@mail.ru"
}, {
"_id": "ObjectID(\"619304749cf306ab40a95312\")",
"receiver": "adawdawd@mail"
}]
}