MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Mongoose findOneAndUpdate Atualizando vários campos


Você está usando o $set operador várias vezes. A sintaxe correta para $set é :
{ $set: { <field1>: <value1>, ... } }

Você precisa alterar sua atualização argumento assim:
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);
   }
});