pushOrModify wie Operator für Mongo Filialdokument
Was ich versuche zu tun, ist, dass wenn Subdoc vorhanden ist, aktualisieren und andernfalls neue Subdoc mit nur einer Methode verschieben.
First, find{ name: "SweetTown" }
und dann
WennBob
ist vorhanden, ich möchte seinen Ruf in @ ände30
:
Town collection
{ name: "SweetTown", residents: [{ name: "Bob", reputation: 20 }] }
sollte @ se
{ name: "SweetTown", residents: [{ name: "Bob", reputation: 30 }] }
Oder nicht, drücken Sie{ name: "Bob", reputation: 30 }
zuresidents
.
Town collection
{ name: "SweetTown", residents: [{ name: "Alice", reputation: 140 }] }
sollte @ se
{ name: "SweetTown", residents: [
{ name: "Alice", reputation: 140 },
{ name: "Bob", reputation: 30 }
]}
Ich habe viel darüber gesucht und einige Möglichkeiten gefunden, die die Lösung sein könnten wie$addToSet
, $push
mit$ne
oderupsert
Möglichkeit
Aber ich konnte diese nicht richtig mischen, um dieses Problem zu lösen. Wie kann ich es zum Laufen bringen?