Dette sker, fordi du gemmer det duplikerede dokument før mongoose
er færdig med at oprette indekset. Mongoose opretter indekserne på farten, efter din app er startet.
Så for at sikre, at dit dokument først bliver gemt, efter at indekserne er oprettet, skal du lytte til index
din models begivenhed. For eksempel:
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();
});
})
});
Nu, når du forsøger at gemme det andet dokument (det duplikerede), vil din MongoDB rejse en fejl, fordi din save
opkald vil bare køre efter indekserne blev oprettet.