ऐसा इसलिए होता है क्योंकि आप डुप्लीकेट दस्तावेज़ को mongoose
. से पहले सहेज रहे हैं सूचकांक बनाना समाप्त कर दिया है। आपका ऐप शुरू होने के बाद, नेवला चलते-फिरते इंडेक्स बनाता है।
इसलिए, यह सुनिश्चित करने के लिए कि आपका दस्तावेज़ अनुक्रमणिका बनने के बाद ही सहेजा जाएगा, आपको index
को सुनना होगा आपके मॉडल की घटना। उदाहरण के लिए:
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();
});
})
});
अब, जब आप दूसरे दस्तावेज़ (डुप्लिकेट वाले) को सहेजने का प्रयास करते हैं, तो आपका MongoDB एक त्रुटि उत्पन्न करेगा, क्योंकि आपका save
इंडेक्स बनने के बाद ही कॉल चलेंगे।