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

Popular posts from this blog

apache - 504 Gateway Time-out The server didn't respond in time. How to fix it? -

c# - .net WebSocket: CloseOutputAsync vs CloseAsync -

c++ - How to properly scale qgroupbox title with stylesheet for high resolution display? -