Wahrscheinlich haben Sie bereits ein Dokument in Ihrer Sammlung, das entweder notification: NULL
hat oder ein Dokument, für das das Benachrichtigungsfeld nicht festgelegt ist. Wenn ein Feld nicht festgelegt ist, wird es als null betrachtet. Da ein eindeutiger Index nur einen Wert pro Feld zulässt, können Sie nicht zwei Dokumente haben, die keinen Feldsatz haben. Sie können dies umgehen, indem Sie auch den sparse
verwenden Option beim Erstellen eines Indexes. So etwas sollte funktionieren (nachdem der bereits vorhandene Index auf notification
gelöscht wurde :
self.db_database[co_name].ensure_index(('notification'),unique=True,sparse=True)
Siehe auch:sparse indexes and null values in mongo