2012-12-19 14 views
18

Qui c'è il mio codice per eliminare un gruppo di record utilizzando pymongopymongo: eliminare i record elegantemente

ids = [] 
with MongoClient(MONGODB_HOST) as connection: 
    db = connection[MONGODB_NAME] 
    collection = db[MONGODN_COLLECTION] 
    for obj in collection.find({"date": {"$gt": "2012-12-15"}}): 
     ids.append(obj["_id"]) 
    for id in ids: 
     print id 
     collection.remove({"_id":ObjectId(id)}) 

è un modo migliore per eliminare questi record? come eliminare tutta una serie di record direttamente

collection.find({"date": {"$gt": "2012-12-15"}}).delete() or remove() 

o cancellare da obj come

obj.delete() or obj.remove() 

o somehting simile?

risposta

47

È possibile utilizzare il seguente:

collection.remove({"date": {"$gt": "2012-12-15"}}) 
+1

se si conosce l'ID, si può semplicemente 'collection.remove (dupId)' – Cmag

Problemi correlati