pushOrModify como operador para subdocumento mongo
O que estou tentando fazer é que, se existir subdoc, atualize-o e, caso contrário, empurre o novo subdoc por apenas um método.
Primeiro, encontre{ name: "SweetTown" }
e depois,
E seBob
existe, quero mudar sua reputação para30
:
Town collection
{ name: "SweetTown", residents: [{ name: "Bob", reputation: 20 }] }
deveria estar
{ name: "SweetTown", residents: [{ name: "Bob", reputation: 30 }] }
Ou não, empurre{ name: "Bob", reputation: 30 }
pararesidents
.
Town collection
{ name: "SweetTown", residents: [{ name: "Alice", reputation: 140 }] }
deveria estar
{ name: "SweetTown", residents: [
{ name: "Alice", reputation: 140 },
{ name: "Bob", reputation: 30 }
]}
Eu pesquisei muito sobre isso e encontrei algumas maneiras que poderiam ser a solução como$addToSet
, $push
com$ne
ouupsert
opção.
Mas não consegui misturá-los adequadamente para resolver esse problema. Como posso fazer isso funcionar?