Если у меня есть следующий документ в моей базе данных:
{
"_id" : MainId,
"subdoc" : [
{
"_id" : SubdocId,
"userid" : "someid",
"toupdate": false,
},
{
"_id" : SubdocId2,
"userid" : "someid2",
"toupdate": false,
}
],
"extra" : [
"extraid1",
"extraid2"
]
}
Как мне обновить поддокумент SubdocId2, где должен совпадать идентификатор (SubdocId2) и идентификатор пользователя любого SubdocId2 равен "someid2" ИЛИ значение "extraid1" существует в "extra"?
Самое дальнее, что я получил:
db.coll.update({
"subdoc._id":"SubdocId2", {
$or: ["extra":{$in:["extraid1"]}, "subdoc.userid":"someid2"]
}
}, {"subdoc.$.toupdate":true})
Возможно, я забыл процитировать что-то, но я получаю ошибку (SyntaxError: invalid property id)