Using mongoose to add new field to existing document in mongodb through update method

后端 未结 3 1584
南笙
南笙 2021-02-20 07:45

I\'m trying to update a mongodb document with mongoose in node.js

When the field exists, the update works, but if the field does not exist, the update will not work.

相关标签:
3条回答
  • 2021-02-20 08:32

    Try the following code:

    User.update(
         {uid: 'uid'}, 
         {vehicle_status : 'vehicleSatus' },
         {multi:true}, 
           function(err, numberAffected){  
           });
    

    Also, make sure that you add vehicle_status to the schema.

    0 讨论(0)
  • 2021-02-20 08:38

    Going through this solution in Year 2019.

    Please note: collection.update is deprecated. Use updateOne, updateMany, or bulkWrite instead

    0 讨论(0)
  • 2021-02-20 08:41

    According to new scenario always use {upsert:true}.

    upsert - if set to true and no record matched to the query, replacement object is inserted as a new record.

       user.updateOne(
                     { email: req.body.email },
                     { $set: { name: 'Aaakash'}},{upsert:true}).then((result, err) => {
                        return res.status(200).json({ data: result, message:"Value Updated" });
                    })
    
    0 讨论(0)
提交回复
热议问题