Vous passez l'ensemble des services
(inclut tous les autres champs) à $set
, et, par conséquent, vous réinitialisez tous les champs imbriqués dans services
. Essayez de transmettre uniquement les données que vous souhaitez mettre à jour/ajouter à votre document en utilisant notation par points.
Documentation $set
dit
db.users.update({"name":"Fabien Rousseau"},{ $set: { "services.cas" : { "external_id" : "fabien.rousseau", "version" : 2 }}})