Does Mongoose support the Mongodb `findAndModify` method?

前端 未结 9 2146
[愿得一人]
[愿得一人] 2020-11-29 23:57

I would like to use findAndModify to atomically increment a field, using Mongoose.

However, the code below throws the error \"TypeError: Object # has no method \'fin

9条回答
  •  粉色の甜心
    2020-11-30 00:45

    just adding to furf answer that if you use objectId in your query, mongoDB will not be able to find your document. The mongoose layer takes care of converting the Hex string object id you get from the routing params to the proper object id.

    to solve this you need to:

    var ObjectID = require('mongodb').ObjectID;
    
    
    var itemId = req.params.itemId;
    var objectId = ObjectID.createFromHexString(itemId);
    Item.findAndModify({_id: objectId},
    

提交回复
热议问题