[pyar] Modificar documento con Pymongo

Matias Benedetto matias.benedetto en gmail.com
Lun Oct 9 18:22:33 ART 2017


Hola Emi!, como andas tanto tiempo?
Gracias por la respuesta!
Sabés que no me funcionó, creo que hay un problema con los _id, porque no
matchea nigún resultado (matched_count siempre arroja cero)
Lo cual es curioso porque estoy metiendo los mismos _id de los documentos
que me revuelve el find().


tweets = collection.find({})
for tweet in tweets:
    actualizar = db.collection.update_one({"_id" : tweet["_id"]},
                     {"$set" : {"prueba":"probando"}})
    print actualizar.matched_count



El 9 de octubre de 2017, 17:28, Emiliano Dalla Verde Marcozzi <
edvm en fedoraproject.org> escribió:

>
>
> El 9 de octubre de 2017, 17:20, Matias Benedetto <
> matias.benedetto en gmail.com> escribió:
>
>> Hola a todxs, comento un problema sencillo que estoy teneindo empezando
>> un proyecto con Mongo y Python. Lo que quiero hacer es agregarle un campo a
>> un documento con un string. Pero no estoy pudiendo. El script no arroja
>> ningún error no se agrega el campo "prueba" en los documentos. ¿Se les
>> ocurre cual puede ser el problema?
>>
>> client = MongoClient()
>> db = client['DbPruebaPartido']
>> collection= db['tweets']
>>
>> tweets = collection.find({})
>>
>> for tweet in tweets:
>>     db.collection.update({'_id' : tweet["_id"]},
>>                      {'$set' : {'prueba' : "probando" }})
>>
>> Gracias
>> Saludos!
>> Matias
>>
>> Buenas Mati, proba con find_one_and_update, te dejo un copy/paste
> funcionando:
>
> conversation = conversations.find_one_and_update(
> {
> '_id': conversation_id,
> }, {
> '$set': {
> 'duration_in_seconds': duration_in_seconds,
> 'confidence': confidence,
> }
> },
> return_document=pymongo.ReturnDocument.AFTER)
>
> Abrazo,
> Emi.
>
> pd: Update esta deprecado, https://api.mongodb.com/python/current/
> api/pymongo/collection.html?highlight=update#pymongo.
> collection.Collection.update
>
> --
> --
> iex(1)> [104, 116, 116, 112, 58, 47, 47, 103, 105, 116, 104, 117, 98, 46,
> 99, 111, 109,
> 47, 101, 100, 118, 109]
> https://e-dvm.blogspot.com
>
> _______________________________________________
> Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar
> Sitio web: http://www.python.org.ar/
>
> Para administrar la lista (o desuscribirse) entrar a
> http://listas.python.org.ar/listinfo/pyar
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20171009/47114ea4/attachment.html>


Más información sobre la lista de distribución pyar