जबकि यह .save() . दिखाई देगा यहाँ सही तरीका है, एक .update() कमांड को "दौड़ की स्थिति" की अनदेखी करते हुए काम मिल जाएगा जो इस त्रुटि का कारण बनता है। मोंगो डीबी इस त्रुटि को फेंक रहा है क्योंकि यह चिंतित है कि मैं दस्तावेज़ के पुराने संस्करण को सहेज रहा हूं जिसे पहले ही अपडेट किया जा चुका है:
- v1 क्लाइंट को भेजा जाता है
- v1 सहेजा गया है, और Mongo DB में v2 में अपडेट किया गया है
- v1 फिर से सहेजने की कोशिश कर रहा है, लेकिन मोंगो डीबी में पहले से ही v2 संग्रहीत है, त्रुटि फेंक दी गई है
क्लाइंट को v1 भेजने का एक बेहतर तरीका है और जब कार्ट ऑब्जेक्ट बदलता है, तो ऑब्जेक्ट को नई कार्ट ऑब्जेक्ट के साथ सिंक्रनाइज़ करें चाहे कुछ भी हो। यह .update() . के माध्यम से किया जा सकता है के बजाय .save() . के माध्यम से ।
ऐसा इसलिए है क्योंकि .save() संस्करण नियंत्रणों को देखता है और उनकी परवाह करता है, जबकि .update() संस्करण नियंत्रण की परवाह किए बिना ऑब्जेक्ट को अपडेट करेगा।