CNode

关于Mongoose异步回调,请问同时修改查询出来的符合条件的记录?

问答
Ddpc761218914发布于10 年前最后回复10 年前4 回复3965 浏览0 收藏

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

查看回复

回复 (4)

D
dpc761218914#1·10 年前

QQ截图20161120200343.png

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

S
sanrudongfeng#2·10 年前

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

D
dpc761218914#3·10 年前
引用 sanrudongfengdb.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])
	}		
}
我是小白,希望能解释清楚。
S
sanrudongfeng#4·10 年前
引用 dpc761218914@sanrudongfeng // 修改记录 var conditions ={ id : id}; var update ={$set : {username:username, passw...

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

参与回复
登录后即可参与回复。登录