MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Erro de chave duplicada de upsert do Mongoose


Você está incluindo level na update parâmetro de critérios de consulta, portanto, se isso também não corresponder ao registro existente, ele tentará criar um novo documento que falhará no índice exclusivo que abrange apenas skill e resource .

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