#node.js #rest #cpanel
Вопрос:
У меня есть rest api, который я развертываю на cpanel. Он отлично работает на моей локальной машине, но при развертывании в cpanel. Я не понимаю, почему «требуется(‘../модели/продукт’)» не будет работать, ссылка на путь в cpanel отличается. Любая помощь будет оценена по достоинству!!!
Ниже приведен мой код.
/src/routes/index.js
module.exports = () => {
....
routes.use(
'/api/product',
productRoutes()
);
return routes;
};
/src/routes/product.js
const productRoutes = require('express').Router();
const productController = require('../controllers/product');
module.exports = () => {
productRoutes.post('/addProduct', productController.addProduct);
productRoutes.post('/getStoreProducts', productController.getStoreProducts);
productRoutes.post('/getAllStoreProducts', productController.getAllStoreProducts);
...
return productRoutes;
};
/src/контроллеры/
const httpStatusCode = require('http-status-codes');
const Product = require('../models/Product'); <-- it cant find it in cpanel
exports.addProduct = async(req, res) => {
const product = new Product({
storeId: req.body.storeId,
img: req.body.img,
remark: req.body.remark,
name: req.body.name,
weight: req.body.weight,
price: req.body.price,
isAvailable: req.body.isAvailable,
category: req.body.category,
weightIn: req.body.weightIn,
status: 'InStore'
});
Product.add(product, (err, product) => {
if(err) {
res.status(httpStatusCode.BAD_REQUEST).send({message: err});
} else {
res.status(httpStatusCode.OK).json(product);
}
});
};
/src/models/
const server = require('../server');
const Product = function(product){
this.store_id = product.storeId;
this.img = product.img;
this.remark = product.remark;
this.name = product.name;
this.weight = product.weight;
this.price = product.price;
this.is_available = product.isAvailable;
this.category = product.category;
this.weight_in = product.weightIn;
this.status = product.status
}
Product.add = (product, result) => {
server.mysqlPool.getConnection( (err, conn) => {
if(err) {
conn.release();
throw err;
}
conn.query("INSERT INTO products SET ?", product, (err, res)=> {
if(err) {
result(err, null);
return;
}
result(null, {id: res.insertId, ...product});
});
server.mysqlPool.releaseConnection(conn);
});
};
module.exports = Product;
На данный момент я действительно не знаю, понимаю, почему он не может найти модель продукта!!!