Vous avez probablement déjà un document dans votre collection qui a soit une notification: NULL
ou un document dont le champ de notification n'est pas défini. Si un champ n'est pas défini, il est alors considéré comme nul. Étant donné qu'un index unique n'autorise qu'une seule valeur par champ, vous ne pouvez pas avoir deux documents qui n'ont pas de champ défini. Vous pouvez contourner ce problème en utilisant également le sparse
lors de la création d'un index. Quelque chose comme ça devrait fonctionner (après avoir supprimé l'index déjà existant sur notification
:
self.db_database[co_name].ensure_index(('notification'),unique=True,sparse=True)
Voir aussi :index clairsemés et valeurs nulles dans mongo