आपके संग्रह में शायद पहले से ही एक दस्तावेज़ है जिसमें या तो notification: NULL
. है या ऐसा दस्तावेज़ जिसमें सूचना फ़ील्ड सेट नहीं है। यदि कोई फ़ील्ड सेट नहीं है, तो इसे शून्य माना जाता है। चूंकि एक अद्वितीय अनुक्रमणिका प्रति फ़ील्ड केवल एक मान की अनुमति देती है, इसलिए आपके पास ऐसे दो दस्तावेज़ नहीं हो सकते जिनमें फ़ील्ड सेट न हो। आप sparse
. का उपयोग करके भी इससे निजात पा सकते हैं सूचकांक बनाते समय विकल्प। कुछ इस तरह काम करना चाहिए (notification
. पर पहले से मौजूद इंडेक्स को छोड़ने के बाद) :
self.db_database[co_name].ensure_index(('notification'),unique=True,sparse=True)
यह भी देखें:मोंगो में विरल अनुक्रमणिका और शून्य मानए>