Können Sie einen Schlüssel für $ addToSet in Mongo angeben?

Ich habe ein Dokument:

{ 'profile_set' :
  [
    { 'name' : 'nick', 'options' : 0 },
    { 'name' : 'joe',  'options' : 2 },
    { 'name' : 'burt', 'options' : 1 }
  ] 
}

und möchte dem profile_set-Satz ein neues Dokument hinzufügen, wenn der Name noch nicht existiert (unabhängig von der Option).

Also in diesem Beispiel, wenn ich versucht habe hinzuzufügen:

{'name' : 'matt', 'options' : 0}

es sollte es hinzufügen, aber hinzufügen

{'name' : 'nick', 'options' : 2}

sollte nichts tun, da bereits ein Dokument mit Namen existiertnick obwohl dieoption ist anders.

Mongo scheint mit dem ganzen Element übereinzustimmen und ich muss am Ende prüfen, ob es dasselbe ist und am Ende treffe ich es

profile_set containing [{'name' : 'nick', 'options' : 0}, {'name' : 'nick', 'options' : 2}]

Gibt es eine Möglichkeit, dies mit $ addToSet zu tun, oder muss ich einen anderen Befehl drücken?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage