Ciò accade perché stai salvando il documento duplicato prima di mongoose
ha terminato la creazione dell'indice. Mongoose crea gli indici in movimento, dopo l'avvio della tua app.
Quindi, per assicurarti che il tuo documento venga salvato solo dopo la creazione degli indici, devi ascoltare l'index
evento del tuo modello. Ad esempio:
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();
});
})
});
Ora, quando provi a salvare il secondo documento (quello duplicato), il tuo MongoDB genererà un errore, perché il tuo save
le chiamate verranno eseguite solo dopo la creazione degli indici.