Допустим, у меня есть следующий объект в коллекции регионов:
{
"_id": "5e873652b8e8132380343984",
"region": "Europe",
"countries": [
{
"id": 1,
"name": "Italy"
},
{
"id": 2,
"name": "Spain"
}
]
}
Теперь я хочу обновить указанную c страну в массиве стран на основе идентификатора, если идентификатор не существует, Я хочу пу sh новую страну.
У меня есть следующий запрос, который прекрасно работает и обновляет указанную c страну:
Region.findOneAndUpdate(
{ _id: someId, "countries.id": country.id },
{ $set: { [".countries.$"]: country } },
{ new: true }
);
Но если страна не существует в объекте стран, это не пу sh страна.