I'm having a bit trouble on understanding how can I import csv into my database. I can already export it since DataGrid has the feature to do it, but struggling on importing it back as a backup/restore.
So this is my ProductSchema.js
import mongoose from 'mongoose'
const ProductSchema = new mongoose.Schema({
    seller_id: {type: mongoose.Schema.Types.ObjectId, required: true, ref: 'User'},
    title: {type: String, required: true},
    description: {type: String, required: true },
    img: {type: String, required:true},
    status: {
        type: String, default: 'available',
    },
    category: {type: String, required: true},
    productCategory: {type: String, required: true},
    price: {type: String, required:true},
    quantity: {type: Number, default: 0}
}, {timestamps: true}
)
export default mongoose.model('Product', ProductSchema)
product.js
 router.post('/addcsv', async (req,res) =>{
    csv()
      .fromFile(req.file.path)
      .then((jsonObj) =>{
        var products = [];
          for(var i=0; i<jsonObj.products.length; i++){
            var obj = {};
            obj._id = jsonObj[i]._id
            obj.seller_id = jsonObj[i].seller_id;
            obj.title = jsonObj[i].title;
            obj.description = jsonObj[i].description;
            obj.img = jsonObj[i].img;
            obj.status = jsonObj[i].status;
            obj.category = jsonObj[i].category;
            obj.productCategory = jsonObj[i].productCategory;
            obj.quantity = jsonObj[i].quantity;
            obj.price = jsonObj[i].price;
            products.push(obj);
          }
              Product.insertMany(products).then((function (){
                res.status(200).send({
                  message: "Successfully Uploaded!"
              }).catch(function(error){
                res.status(500).send({
                    message: "failure",
                    error
                });
               });
          }))
      }).catch((error) => {
        res.status(500).send({
            message: "failure",
            error
        });
    })
  });
Front.jsx
 const uploadCSVProduct = async (e) =>{
    e.preventDefault();
   const file = e.target[0]?.files[0]
   console.log(file)
   if(!file) return
   try {
    const res = await publicRequest.post('/product/addcsv')
    console.log(res.data)
   } catch (error) {
    console.log(error)
   }
}
<form onSubmit={uploadCSVProduct} className='form'>
    <input type='file' multiple />
    <Button variant='contained' endIcon={<PhotoCamera />}  size="small" 
     type='submit'>Upload</Button>
</form>
