Jer*_*rVi 1 mongoose mongodb node.js
我有这个收藏(不完全是我的收藏,例如)。我想将所有“ numberOfViewsPerWeek”字段更新为0,就像重置一样。
{
"_id" : ObjectId("594d2359bf170b0828690bf7"),
"owner" : ObjectId("594c126285f0922a985083c1"),
"numberOfViewsSincePost" : 15,
"numberOfViewsPerWeek" : 4,
}
{
"_id" : ObjectId("594d709addb8691cf067fa73"),
"owner" : ObjectId("594c126285f0922a985083c1"),
"numberOfViewsSincePost" : 10,
"numberOfViewsPerWeek" : 2,
}
{
"_id" : ObjectId("764d709addb8691cf067fa70"),
"owner" : ObjectId("594c126285f0922a985083c1"),
"numberOfViewsSincePost" : 12,
"numberOfViewsPerWeek" : 7,
}
...
Run Code Online (Sandbox Code Playgroud)
我会尝试使用update,但是它只会更新第一个文档,我的代码是这样
Property.update({}, {'$set': {'numberOfViewsPerWeek' : 0}}, function(error, properties){
if(error){
console.log(error);
}
if(!properties){
console.log('Something went wrong');
}
console.log('success update view');
});
Run Code Online (Sandbox Code Playgroud)
我该怎么办?提前致谢
我实际上认为很多人对此都有疑问。
您应该包括一个名为的选项multi: true
。
例如:
Property.update({}, {'$set': {'numberOfViewsPerWeek' : 0}}, {multi: true},
function(error, properties){/* ... rest of the code*/
Run Code Online (Sandbox Code Playgroud)
默认情况下,update()方法更新单个文档。设置“多参数”以更新所有符合查询条件的文档。
我不知道他们为什么这样做,我觉得这很不直观。
我认为更新所有文档应为默认设置。
归档时间: |
|
查看次数: |
957 次 |
最近记录: |