MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Mongoose-Upsert-Fehler bei doppeltem Schlüssel

Sie schließen level ein im update Abfragekriterienparameter, wenn dieser also nicht auch mit dem vorhandenen Datensatz übereinstimmt, wird versucht, ein neues Dokument zu erstellen, das den eindeutigen Index nicht erfüllt, der nur skill umfasst und resource .

Versuchen Sie, Ihr update zu ändern dazu:

ResourceSkillLevel.update({                                           
    resource: self._id,
    skill: skill._id
}, {$set: {level: level}}, {upsert: true}, cb);