Vermeiden Sie doppelte Einträge im Mongoose-Array

8

Ich habe eine Beziehung von vielen zu vielen mit Mungo, die so aussieht.

%Vor%

Ich möchte sicherstellen, dass ein Spieler nicht zweimal in einem Team erscheint.

Wenn ich das tue:

%Vor%

Wenn ich den Player schon vorher hinzugefügt habe, sehe ich die Spieler-ID zweimal im Team-Dokument. Gibt es eine Art Mongo / Mungo-Flagge, die ich einstellen kann, so dass die Save-Methode eine Ausnahme auslöst oder den Player nicht hinzufügt. Ich weiß, dass ich die Überprüfung von Hand machen könnte, aber ich würde eine einfachere Lösung bevorzugen.

Danke!

    
martinpaulucci 15.11.2012, 19:04
quelle

2 Antworten

20
___ tag123mongodb ___ MongoDB ist eine skalierbare, hochleistungsfähige Open-Source-Dokumenten-orientierte NoSQL-Datenbank. Es unterstützt eine große Anzahl von Sprachen und Anwendungsentwicklungsplattformen. Fragen zur Serververwaltung können unter http://dba.stackexchange.com gestellt werden. ___ qstntxt ___

Ich habe eine Beziehung von vielen zu vielen mit Mungo, die so aussieht.

%Vor%

Ich möchte sicherstellen, dass ein Spieler nicht zweimal in einem Team erscheint.

Wenn ich das tue:

%Vor%

Wenn ich den Player schon vorher hinzugefügt habe, sehe ich die Spieler-ID zweimal im Team-Dokument. Gibt es eine Art Mongo / Mungo-Flagge, die ich einstellen kann, so dass die Save-Methode eine Ausnahme auslöst oder den Player nicht hinzufügt. Ich weiß, dass ich die Überprüfung von Hand machen könnte, aber ich würde eine einfachere Lösung bevorzugen.

Danke!

    
___ answer40804935 ___

Verwenden Sie einfach $addToSet -Methode:

%Vor%     
___ tag123mongoose ___ Mongoose ist ein MongoDB-Objektmodellierungstool oder ODM (Object Document Mapper), das in JavaScript geschrieben wurde und für den Einsatz in einer asynchronen Umgebung konzipiert wurde. ___ answer13405495 ​​___

Verwenden Sie den Aktualisierungsoperator player wie folgt:

%Vor%

Wenn players die ObjectId eines Spielers ist, wird sie nur zum Array %code% des Teams hinzugefügt, wenn es nicht bereits vorhanden ist.

    
___ qstnhdr ___ Vermeiden Sie doppelte Einträge im Mongoose-Array ___
JohnnyHK 15.11.2012, 20:19
quelle
5

Verwenden Sie einfach addToSet -Methode:

%Vor%     
Pedro Vagner 25.11.2016 12:19
quelle

Tags und Links