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

mangusto exclusivo:verdade não funciona


Isso acontece porque você está salvando o documento duplicado antes de mongoose terminou de criar o índice. O Mongoose cria os índices em movimento, após o início do aplicativo.

Portanto, para garantir que seu documento seja salvo somente após a criação dos índices, você deve ouvir o index evento do seu modelo. Por exemplo:
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();
    });
  })
});

Agora, quando você tentar salvar o segundo documento (o duplicado), seu MongoDB gerará um erro, porque seu save as chamadas serão executadas apenas após a criação dos índices.