sql >> Base de Datos >  >> NoSQL >> MongoDB

Mongoose upsert error de clave duplicada

Estás incluyendo level en la update parámetro de criterios de consulta, por lo que si eso no coincide con el registro existente, intentará crear un nuevo documento que fallará en el índice único que solo abarca skill y resource .

Intenta cambiar tu update a esto:

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