我想增加voteCount由1当用户选择一个特定的选项。数据是这样的 -猫鼬:findByIdAndUpdate不更新文件
{
"_id": {
"$oid": "58f2ef61af2c5c068c2f1d7a"
},
"pollName": "Who is your favourite cricketer ?",
"options": [
{
"name": "Dhoni",
"_id": {
"$oid": "58f2ef61af2c5c068c2f1d7d"
},
"voteCount": 10
},
{
"name": "Kohli",
"_id": {
"$oid": "58f2ef61af2c5c068c2f1d7c"
},
"voteCount": 6
}
],
"__v": 0
}
我想这一点 -
// req.body.votedFor is coming fine.
PollModel.findByIdAndUpdate(req.session.pollId, {$inc: { options: {name: req.body.votedFor, voteCount : 1 } }}, {new: true}, function(err, doc){
if(err){
console.log("Something wrong when updating data! "+err);
}
console.log(doc);
});
这是不更新voteCount和我得到这个消息 -
东西错了,当更新数据! MongoError:不能与非数字的参数增量:{选择:{voteCount:1,名称: “纵帆船”}}
不确定
我在哪里做错了吗? 请帮忙。
你是否尝试从回调函数读取错误参数?我认为这会帮助你确定一个问题。 – Dmitry
@Dmitry问题出现在{$ inc ...}中。但如何去选择名称?请指导。 –
@RiyaSaxena得到错误,意外的标识符$ inc: –