Recuerda que en las ciencias informáticas un error casi siempere suele tener más de una soluciones, por lo tanto aquí mostramos lo más óptimo y mejor.
Solución:
$push
no funciona en este caso porque está tratando de usar un array función sobre un objeto.
Usar $push
necesitaría cambiar su estructura de datos a lo siguiente:
"_id" : ObjectId("501c83051d41c8753e000000"),
"node" : "denver",
"enc" :
"environment" : "production",
"classes" : [
"denver"
]
,
"inherit" : "default"
Entonces tu consulta sería:
col.update(
'node' : 'denver'
,
'$push':
'enc.classes' : 'boulder'
,
True
)
Esta consulta funciona.
db.foo.update("node": "denver", "$set": "enc.classes.boulder": ""
Eres capaz de confirmar nuestra función dejando un comentario o valorándolo te lo agradecemos.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)