大佬教程收集整理的这篇文章主要介绍了node.js – Mongoose多重更新,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
[ { "_id": 1,"value": 50 },{ "_id": 2,"value": 100 } ]
@H_310_9@model.@R_618_9531@e({_id: {$in: ids}},{$set: ids.value},{multi: truE};
[ { "_id": 1,"value": 4 },{ "_id": 2,"value": 27 } ]
请参阅此here的文档
假设您当前的数据库模型包含这样的文档(如您所描述的那样):
[ { "_id": 1,"value": 100 } ];
并且您在下面的数组中包含要使用当前db的文档修改的对象(即文档),如下所示:
idsArray: [ { "_id": 1,"value": 4 },"value": 27 } ];
根据我对mongodb& amp ;;的经验mongoose,我不认为你可以使用单行查询更新所有文档(这是你想要做的)..(P.s.我不知道这个,所以我不确定这个…)
想法:循环遍历docs中的每个doc,即idsArray并在其上调用update().
那么,这是代码:
idsArray.forEach(function(obj) { Model.@R_618_9531@e({_id: obj._iD},{$set: {value: obj.value}}); });
在上面的代码中,我假设你在db docs中有_id值,就像它们在上面写的那样(即“_id”:1)..但是如果它们像这样“_id”:ObjectId(‘1’)
[ { "_id": ObjectId('1'),"value": 50 },..... ..... ]
那么你需要在update()查询中将_id转换为ObjectId(obj._id).
所以你会这样做的.
var ObjectId = require('mongodb').objectID; idsArray.forEach(function(obj) { Model.@R_618_9531@e({_id: ObjectId(obj._id)},{$set: {value: obj.value}}); });
附:在前进之前确认它(即_id)..
希望这可以帮助.
干杯,
以上是大佬教程为你收集整理的node.js – Mongoose多重更新全部内容,希望文章能够帮你解决node.js – Mongoose多重更新所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。