关于Mongoose异步回调,请问同时修改查询出来的符合条件的记录?
发布于 3 年前 作者 dpc761218914 2073 次浏览 来自 问答

例如,数据库中有100条数据,根据某条件查询出了10条数据,然后修改这10条数据的某个字段并保存。 查了bluebrid,在Mongoose中不太会用。有没有dome之类的,非常感谢·····

4 回复

QQ截图20161120200343.png

这个貌似只修改了一条记录吧???

db.collcetion.update(query,update,option);option里面设置multi为true即可更新多条记录,第一个参数查询条件,第二个更新条件

@sanrudongfeng // 修改记录 var conditions ={_id : id}; var update ={$set : {username:username, password : password}}; var options = {upsert : true}; User.update(conditions, update, options, function(error){ if(error) { res.json({“status”:“error”}); } else { res.json({“status”:“success”}); } }); 这样吗?这10条记录的需要修改的值我还需要另外计算的,值不一样,不能一次性改的??

如果可以同步是这样的 
find(records){

	for(var i=0;i<records.length;i++){
			//计算
			update(records[i])
	}		
}
我是小白,希望能解释清楚。

@dpc761218914 你说的值不一样是什么意思,根据每条记录原先的值做修改吗?你可以在update选项里面做到啊

回到顶部