För närvarande tror jag att update()
i Mongoose har vissa problem, se:https://groups.google.com/forum/#%21topic/mongoose-orm/G8i9S7E8Ergand https://groups.google.com/d/topic/mongoose-orm/K5pSHT4hJ_A/discussion .
Kontrollera dock dokumenten för uppdatering:http://mongoosejs.com/docs/api.html (det är under modell). Definitionen är:
Tidigare lösning (avskrivs efter version mongoose 5+)
Model.update = function (query, doc, options, callback) { ... }
Du måste skicka alternativen inuti ett objekt, så din kod skulle vara:
Model.update = function ({}, {cid: ''}, {multi: true}, function(err) { ... });
Ny lösning
Model.updateMany = function (query, doc, callback) { ... }
Model.updateMany = function ({}, {cid: ''}, function(err) { ... });
Jag tror att Mongoose lindar in din cid i en $set, så det här är inte samma sak som att köra samma uppdatering i mongo-skalet. Om du körde det i skalet skulle alla dokument ersättas av ett med en enda cid: ''
.