Не използвайте вложка.
Използвайте актуализация с upsert=true
. Актуализацията ще търси документа, който съответства на вашата заявка, след това ще промени желаните от вас полета и след това можете да му кажете upsert:True, ако искате да вмъкнете, ако нито един документ не съответства на заявката ви.
db.collection.update(
<query>,
<update>,
{
upsert: <boolean>,
multi: <boolean>,
writeConcern: <document>
}
)
Така че, за вашия пример, можете да използвате нещо подобно:
db.collection.update(doc, doc, {upsert:true})