[Python-es] problema con python+mongodb

Jorge shephiroth en hotmail.com
Sab Nov 2 14:14:51 CET 2013


Chema Cortes <pych3m4 en ...> writes:

> 
> El día 1 de noviembre de 2013 22:44, Jorge <shephiroth en ...> escribió:
.......
> >
Mi estructura:
[{"datos":"datos",....
  "mi_lista": [
    {"id":1, "otro_id":3, "value":10},
    {"id":2, "otro_id":3, "value":3}]
}]

Mi consulta:
mongodb["proyecto"]["coleccion"].update(
  {"mi_lista.otro_id":3},
  {"mi_lista.$.value":7}
)
> > Esta funcion solo modifica la primera ocurrencia de la lista en cada
> > documento. Hay alguna manera para que modifique todos los diccionarios que
> > cumplan con la condicion impuesta??
> 
> No se puede (no sería una operación atómica). O actualizas
> separadamente cada diccionario, o usas el patrón "Update if
> Current"[1] para actualizar todo el documento.
> 
> [1]:
http://docs.mongodb.org/manual/tutorial/isolate-sequence-of-operations/#update-if-current
> 
> >
> > GRACIAS

No enciendo lo que comentas del update_if_current. Podrías utilizas ese
update en el ejemplo exputo o en uno propio??? Sobretodo que tenga listas de
diccionarios.

GRACIAS




Más información sobre la lista de distribución Python-es