Domanda

Saluti,

Sto tentando di rimuovere più documenti da una raccolta MongoDB usando la seguente sintassi. Non so se questo è corretto, come ho trovato da qualche parte su internet e non sono riuscito a trovare nulla in quanto far rispettare la legittimità di questa affermazione:

pymongo_collection_object.remove(
    [
        {
            'sku': '100-00'
        },
        {
            'sku': '200-00'
        }
    ]
, safe=True)

mi aspetto il codice sopra eliminerebbe entrambi i documenti tra cui un valore 'sku' di '100-00' o '200-00' ma purtroppo entrambi i documenti sono ancora presenti all'interno della collezione. Ho anche provato colata sia la chiave 'sku' e il suo valore di Unicode come so sono memorizzati in questa codifica. Come si può dire io sono anche l'attivazione della modalità sicura assicurare che non c'è nulla fuori linea accadendo sul lato server.

Ogni aiuto è apprezzato, grazie!

È stato utile?

Soluzione

È possibile farlo utilizzando $ o / $ in operatori.

Prova questo:

pymongo_collection_object.remove({'$or': [{'sku': '100-00'}, {'sku': '200-00'}]}, safe=True)

o

pymongo_collection_object.remove({'sku': {'$in': ['100-00', '200-00']}}, safe=True)
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top