Я пытался обновить мои «Заказы», в которых указаны продукт, количество и _id. После того, как я запустил патч, он вернется к успеху, но ничего не изменит.
Снимок экрана с кодом обновления моего API
Код исправления / обновления здесь . Я новичок, поэтому у меня не может быть встроенного изображения
Почтальон Снимок экрана: здесь я использую тело в почтальоне, чтобы сохранить объект и исправить его.
Это мой скриншот теста API POSTMAN
Моя модель заказов
Модель заказов
Патч-код:
router.patch('/:id',(req,res)=>{
var update = {};
for(var up of req.body)
{
update[up.new]=up.value
}
console.log(update )
Product.update({_id:req.params.id},{$set:update})
.exec()
.then(result=>{
res.status(200).json(
{
Message:'Product Updated',
Request:{
type:'GET',
url:'http://localhost:5000/orders/'+req.params.id
}
}
)
})
.catch(err=>{
res.status(500).json(err)
console.log(err)
})
})
Код модели
var express = require('express') var mongoose = require('mongoose');
var orderSchema = mongoose.Schema({
_id:mongoose.Schema.Types.ObjectId,
product:{type:String, required:'true'},
quantity:{type:Number,default:1}
})
module.exports = mongoose.model('Order',orderSchema,'Order');