$or dans un paramètre de find

L'auteur de ce sujet a trouvé une solution à son problème.
Auteur du sujet

Bonjour,

J'effectue la requête suivante à MongoDB, mais il ne veut pas :

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
self.db.analysis.find({
    'type': type_,
    'label': label,
    'settings': settings,
    'parents': {
        '$or': [
            {
                '$size': 0
            },
            {
                '$all': parents, 
                '$size': len(parents)
            }
        ]
    }
})

Il me dit :

1
pymongo.errors.OperationFailure: database error: Can't canonicalize query: BadValue unknown operator: $or

Cette requête a pour objectif de répondre au problème introduit ici.

Merci !

+0 -0
Staff

Tu peux mettre le or à la racine meme si du coup les deux parties auront une grosse partie commun. Apres je ne suis pas un pro de mongo. Probablement que le tuto en cours de redaction sur le sujet serait bienvenue.

+0 -0
Vous devez être connecté pour pouvoir poster un message.
Connexion

Pas encore inscrit ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte