我想增加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: –