sql >> Database >  >> NoSQL >> MongoDB

Mongoose upsert dubbele sleutelfout

Je neemt level op in de update querycriteria parameter, dus als dat niet ook overeenkomt met het bestaande record, zal het proberen een nieuw document te maken dat niet voldoet aan de unieke index die alleen skill omvat en resource .

Probeer uw update te wijzigen naar dit:

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



  1. Mongo probeert automatisch verbinding te maken met poort 27017 (localhost)

  2. Time-outopties voor MongoDB-client begrijpen

  3. TypeError:kan de operator 'in' niet gebruiken om te zoeken naar '_id' in [{}]

  4. Ondersteuning voor meerdere gebruikerstypen door Passport-local mongoose node.js