【问题标题】:CRUD op Express.js Node.js Mysql Cannot insert using MVCCRUD op Express.js Node.js Mysql 无法使用 MVC 插入
【发布时间】:2021-10-24 20:59:06
【问题描述】:

我正在尝试使用 React.js、Express.js 和 Node 来实现 CRUD 操作,所以我编写了一个基本代码并且可以正常工作,但我想使用 Model 和 Controller 来编写一个干净的代码,这样就无法正常工作并向我发送错误我不知道'不知道问题是什么,所以这里有人可以指导我让它工作。顺便说一句,Get 可以工作,但要插入编号。

我用邮递员测试它,我得到:

Error : Cannot POST /api/insert

代码如下:

Controller.js

// create new car   
exports.createNewCar = (req, res) =>{
    const carReqData = new CarModel(request.body);
    console.log('carReqData', carReqData);
    // check null
    if(req.body === Object && Object.keys(req.body).length === 0){
        res.send(400).send({success: false, message: 'Please fill all fields'});
    }else{
        CarModel.createCar(carReqData, (err, car)=>{
            if(err)
            res.send(err);
            res.json({status: true, message: 'Car Created Successfully', data: car.insertId})
        })
    }
}

Model.js

// create new car
var Car = function(car){
    this.idCars = car.idCars;
    this.carName = car.carName;
    this.carModel = car.carModel;
}
Car.createCar = (carReqData, result) =>{
    db.query('INSERT INTO Cars SET ?', carReqData, (err, res)=>{
        if(err){
            console.log('Error while inserting data');
            result(null, err);
        }else{
            console.log('Car created successfully');
            result(null, res)
        }
    })
}

Routes.js

// create new car
router.post('/insert', carController.createNewCar);

Index.js

app.use('/insert', CarRoutes);

【问题讨论】:

  • 您的 POST 路由错误正在返回前缀 '/api',因此请检查您的路由器定义,请参阅此处了解如何为路由添加前缀,这可能会给您一些需要寻找的东西:stackoverflow.com/questions/68910733/…
  • @ConBran 是的,我应该将 /api 添加到发布路线...谢谢

标签: javascript mysql node.js reactjs express


【解决方案1】:

我通过编辑路线解决了这个问题

Routes.js

router.post('/', carController.createNewCar);

index.js

app.use('/app/insert', CarRoutes);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-07
    • 1970-01-01
    • 2019-03-20
    • 1970-01-01
    相关资源
    最近更新 更多