Cela se produit parce que vous enregistrez le document dupliqué avant mongoose
a fini de créer l'index. Mongoose crée les index lors de vos déplacements, après le démarrage de votre application.
Ainsi, pour vous assurer que votre document ne sera enregistré qu'après la création des index, vous devez écouter le index
événement de votre modèle. Par exemple :
Model.on('index', function (error) {
console.log(jp);
jp.save(function(err){
console.log(err);
var jp2 = new Model({ phone: "123456"});
console.log(jp2);
jp2.save(function(err){
console.log(err);
process.exit();
});
})
});
Désormais, lorsque vous essayez d'enregistrer le deuxième document (celui dupliqué), votre MongoDB génère une erreur, car votre save
les appels s'exécuteront juste après la création des index.