.required() function is used for name, price, quantity in post request from node js. if i remove required function then it works correctly.
Code of model file:
var productSchema = mongoose.Schema({
name: String,
price: Number,
quantity: Number,
});
var Product = mongoose.model("Product", productSchema);
function validateProduct(data) {
const schema = Joi.object({
name: Joi.string().min(3).required(),
price: Joi.number().min(0).required(),
quantity: Joi.number().min(0).required(),
});
Code of api file
router.post(
"/",
validateProduct,
upload.single("productImage"),
async (req, res) => {
console.log(req.file);
let product = await Product.findOne({ name: req.body.name });
if (product)
return res.status(400).send("Product with same name already exist!");
product = new Product();
product.name = req.body.name;
product.price = req.body.price;
product.quantity = req.body.quantity;
await product.save();
return res.send(product);
}
);