2016-09-16 18 views
0

我想更新我的文檔字段「investorCount」以及在單個貓鼬查詢中的同一文檔中的更多更新。如何訪問文檔字段的先前值並在單個查詢中用貓鼬更新它

我的更新查詢

Campaign.update({"campaign.campaign_Id":data.campaignId},{$push: {"campaign.investorsDetails":{investorId: id,investedAmount: Amtinv }},$set : {"campaign.investorCount" : this."campaign.investorCount" + 1 }},function(error,update){ 
if(error){ 
    defered.reject(error); 
}else{ 
    console.log(update); 
defered.resolve(update); 
} 
}); 
return defered.promise; 
} 

我的模式是 -

var campaignSchema = new Schema ({ 
campaign: 
{ 
campaign_Id : {type: Number ,index :{unique:true}}, 
beneficiaryAccount : {type : String , required:true}, 
createdBy : {type : String }, 
investorsDetails : [{ 
    investorId:{type:Number} , 
    investedAmount : {type:Number} 
}], 
investorCount : {type : Number , default : 0} 
}}); 

我用「這個」操作符來訪問該字段的當前值,但它不能正常工作,請幫我解決這

回答

1

蒙戈提供方便$inc運營商只爲這:

$inc : {"campaign.investorCount" : 1 }}