आप जो करने की कोशिश कर रहे हैं वह आपकी स्कीमा को देखते हुए संभव नहीं है। डॉट-नोटेशन बहु स्तरीय हो सकता है लेकिन यदि एक से अधिक स्तर हैं जो एक सरणी है तो इसे अब स्थितीय ऑपरेटर '$' का उपयोग करके संबोधित नहीं किया जा सकता है।
उदा. आपको यह करना होगा:
db.my_collection.update(
{'websites.blog_posts.url': 'http://www.example.com/01.html' },
{'$set': {'websites.$.blog_posts.$.impressions': 549}},
true );
लेकिन अपडेट में दो पोजीशन ऑपरेटर्स का होना संभव नहीं है क्योंकि MongoDB केवल पहले ऐरे में किसी एलीमेंट की स्थिति निर्धारित कर सकता है।
आपका एकमात्र विकल्प उपयोगकर्ता वेबसाइटों का एक समर्पित संग्रह करने के लिए अपनी स्कीमा को फिर से डिज़ाइन करना है (जो इस मामले में अन्य कारणों से भी बेहतर है)।