[英]Mongoose findOneAndUpdate Updating Multiple Fields
findOneAndUpdate方法無法正常工作。 我正在嘗試一次更新所有字段,但是僅更新(設置)最后一個字段。 它總是只有最后一個領域。 有人可以告訴我我做錯了什么,或者我可以做些什么才能達到預期的效果?
這是我的findOneAndUpdate代碼:
Book.findOneAndUpdate({_id:bookId},{$set:{"name": name},$set:{"genre": genre},$set:{"author": author},$set:{"similar": similar}}).exec(function(err, book){
if(err){
console.log(err);
res.status(500).send(err);
} else {
res.status(200).send(book);
}
});
您多次使用$set
運算符。 $set
的正確語法為:
{ $set: { <field1>: <value1>, ... } }
您需要像這樣更改更新參數:
Book.findOneAndUpdate({ "_id": bookId }, { "$set": { "name": name, "genre": genre, "author": author, "similar": similar}}).exec(function(err, book){
if(err) {
console.log(err);
res.status(500).send(err);
} else {
res.status(200).send(book);
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.