代码之家  ›  专栏  ›  技术社区  ›  AlaaKudo810

无法更新猫鼬中的对象

  •  0
  • AlaaKudo810  · 技术社区  · 9 月前

    我正在尝试以我的顺序模式更新对象,状态已正确更新,但 latestStatusUpdates 不是。以下是我的订单模式的重要部分:

    status: {
        type: String,
        enum: ["pending", "processing", "delivered", "cancelled"],
        default: "pending",
    },
    latestStatusUpdates: {
        type: {
            pending: Date,
            processing: Date,
            delivered: Date,
            cancelled: Date,
        },
        default: {
            pending: "",
            processing: "",
            delivered: "",
            cancelled: "",
        },
    },
    

    以下是我更新属性的方式:

        const orderId = req.params.id;
        const newStatus = req.body.status;
        
        const order = await Order.findById(orderId);
    
        if (!order) {
            return res.status(404).send({
                message: "Order not found.",
            });
        }
    
        
        const today = new Date();
    
        order.status = newStatus; // This is updating correctly
    
        order.latestStatusUpdates[newStatus] = today; // This is not updating
    
        await order.save();
    
        res.status(200).send({
            message: "Order Updated Successfully!",
    })
    
    0 回复  |  直到 9 月前