您好我正在尝试使用nodejs更新mongodb中的数据。我想在用户创建交易后将总数据更新为+1。但我对此一无所知。因为没有价值回来。像req.body,我可以传入。
var UserSchema = new mongoose.Schema({
total: {type: Number, default: 0}
})
UserSchema.plugin(passortLocalMongoose);
module.exports = mongoose.model("User", UserSchema )
app.post('/bitcoin', isLoggedIn, function(req, res) {
client.createTransaction({'currency1' : 'USD', 'currency2' : 'BTC', 'amount' : 500},function(err,result){
if(err){
console.log(err)
} else {
User.findByIdAndUpdate(req.params.id,{total: +1}, function(error, updated){
if(error){
console.log("error occured " + error);
return res.redirect("/dashboard")
} else {
console.log('total updated' + updated)
}
})
var coinPayment = result;
res.redirect(coinPayment.status_url)
}
});
}
})
它下面的console.logs并没有为此更新任何解决方法
total updated null
答案 0 :(得分:3)
试试这个,你没有在params中声明id。
app.post('/bitcoin/:id',function(req, res){ /* Some stuff */})
更新查询
User.update({_id : req.params.id},{$inc: {total:1}})