如何在猫鼬的findOneAndUpdate过滤器中使用_id?

时间:2020-01-19 00:30:36

标签: node.js mongodb mongoose

通过在过滤器中设置findOneAndUpdate无法使用_id后,我发现find by _id with Mongoose。答案说我必须在模式中定义它。如果将_id放在模式中,我将得到

Error [MongooseError]: document must have an _id before saving

我同意。设置ID的是Mongo。

那么如何在findOneAndUpdate中使用_id?

更新:

var orderSchema = new mongoose.Schema({
    deleted: Boolean,
    client: {
        name: String,
        phone: String
    },
    products: [{
        name: String,
        quantity: Number,
        price: Number
    }],
    seller_id: Number,
    order_id: Number,
    total: Number
});

我想使用

进行更新
let r = await Order.findOneAndUpdate({ _id: idExample, seller_id: json.seller_id }, order);

但是它抱怨_id中没有idExamplefind by _id with Mongoose中的答案告诉我在模式中使用_id: String,但随后我得到Error [MongooseError]: document must have an _id before saving

0 个答案:

没有答案
相关问题