猫鼬更新:$ inc在upsert中不起作用 [英] mongoose update : $inc is not working in upsert
本文介绍了猫鼬更新:$ inc在upsert中不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我试图更新文档(如果存在)或插入(如果不存在).我有一个带有$ inc,的字段(想将前一个值加1). 我的代码是
I am trying to update the document if exist or insert if not exist.I have one field with $inc,( want to increment previous value by one). My code is
var Appuser = new Appusers({
imei: req.body.imei,
$inc : {user_count:1},
install_flag : 1
});
var upsertData = Appuser.toObject();
delete upsertData._id;
Appusers.update({imei: Appuser.imei}, upsertData, {upsert: true}, function(err, data){
if(err) return console.log(err);
res.send(data);
});
只有$ inc不起作用.在模式中,我有user_count : { type:Number, default:0}
Only $inc is not working. In schema i have user_count : { type:Number, default:0}
推荐答案
我想提出以下建议:
Appusers.update({imei: Appuser.imei}, {$set: {imei: req.body.imei, install_flag : 1}, $inc : {user_count:1}}, {upsert: true}, function(err, data){
if(err) return console.log(err);
res.send(data);
});
或者如果您想使用一个对象:
Or If you want to use an object:
var upsertData = {
$set: {imei: req.body.imei, install_flag : 1},
$inc: {user_count: 1}
};
Appusers.update({imei: Appuser.imei}, upsertData, {upsert: true}, function(err, data){
if(err) return console.log(err);
res.send(data);
});
这篇关于猫鼬更新:$ inc在upsert中不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文