В момента вярвам, че update()
в Mongoose има някои проблеми, вижте:https://groups.google.com/forum/#%21topic/mongoose-orm/G8i9S7E8Ergand https://groups.google.com/d/topic/mongoose-orm/K5pSHT4hJ_A/discussion .
Все пак проверете документите за актуализация:http://mongoosejs.com/docs/api.html (това е под Модел). Определението е:
По-ранно решение (амортизирано след версия mongoose 5+)
Model.update = function (query, doc, options, callback) { ... }
Трябва да предадете опциите вътре в обект, така че кодът ви ще бъде:
Model.update = function ({}, {cid: ''}, {multi: true}, function(err) { ... });
Ново решение
Model.updateMany = function (query, doc, callback) { ... }
Model.updateMany = function ({}, {cid: ''}, function(err) { ... });
Вярвам, че Mongoose обвива вашия cid в $set, така че това не е същото като стартиране на същата актуализация в mongo shell. Ако го стартирате в обвивката, тогава всички документи ще бъдат заменени с един с един cid: ''
.