MongoDB update deeply nested array -
निम्न दस्तावेज़ पर विचार करें:
{"comments": [{"id": 1, "यूजर आईडी": "जॉय", "कमेंट": "लॉरेम इप्सम ...", "प्रतिक्रियाएं": [{"id": 2, "यूजर आईडी": "स्मिथ", "कमेंट": "लॉरेम इप्सम .. "," प्रतिक्रियाएं ": [{" id ": 3," userid ":" यादृच्छिक "," टिप्पणी ":" लेरेम ipsum ... "," प्रतिक्रियाएं ": [] // मैं एक टिप्पणी को पुश करना चाहता हूं ("Id": 5, "userid": "आदमी", "टिप्पणी": "lorem ipsum ..."}}}, {"id": 5, "Userid": "adam", "comment": "lorem ipsum ..."}}}]}
क्या उस दस्तावेज़ में उस दस्तावेज़ को पुश करने का कोई तरीका है < / कोड> सरणी? इसलिए इस मामले में एक उपयोगकर्ता एक स्तर -3 टिप्पणी पर टिप्पणी करना चाहता है और मैं उस टिप्पणी को सरणी में डालना चाहता हूं। टिप्पणी करने के बाद मैं उपयोगकर्ता को सरणी स्थिति और सर्वर पर वापस भेज सकता हूं, लेकिन मुझे पूरा यकीन है कि अविश्वसनीय है इसके अलावा, यदि बीच में एक डिलीट होता है (मुझे लगता है कि (?)) स्थिति में सरणी में बदल जाएगा, इसलिए यह वास्तव में कोई नहीं है
यदि आप उस स्तर पर उतरने के लिए इंडेक्स का अनुक्रम जानते हैं, तो हाँ:
& gt; Db.test.update ({...}, {"$ push": {"comments.0.responses.0.responses.0.responses": "यह मेरी प्रतिक्रिया है"}})
पूर्व>0 इंडेक्स हैं I हालांकि, इस तरह एक गुणाकृत नेस्टेड संरचना लगभग निश्चित रूप से एक खराब डेटा मॉडलिंग विकल्प है। आपको अन्य विकल्पों पर विचार करना चाहिए शायद डॉक्स पर सहायक हो जाएगा?
Comments
Post a Comment