我正在尝试使用带有productId的nodejs和mongodb保存订单,但是在这里我收到一条错误消息订单验证失败:productId:需要路径productId
。” 我在Postman中执行POST方法,请帮助我解决此问题
路线order.js代码
const express = require('express');
const router = express.Router();
const mongoose = require('mongoose');
const Order = require('../models/order');
router.post('/', (req, res, next) =>{
const order = new Order({
_id: new mongoose.Types.ObjectId(),
quantity: req.body.quantity,
productId: req.body.productId
});
order.save().then(result => {
console.log(result);
res.status(201).json({
message: 'Created order successfully',
createdProduct: {
quantity: result.quantity,
productId: result.productId,
_id: result._id,
request:{
type: 'GET',
url: 'http://localhost:3000/orders/' + result._id
}
}
});
})
.catch(err => {
console.log(err);
res.status(500).json({
error: err
});
});
});
module.exports = router;
建模order.js
const mongoose = require('mongoose');
const orderSchema = mongoose.Schema({
_id: mongoose.Schema.Types.ObjectId,
productId: { type: mongoose.Schema.Types.ObjectId, ref: 'Product', required: true},
quantity: { type: Number, default: 1}
});
module.exports = mongoose.model('Order', orderSchema);
请先让我知道我如何克服这个问题