gpt4 book ai didi

node.js - 方法 set/add 不是一个函数 sequelize node js

转载 作者:行者123 更新时间:2023-12-04 12:30:21 27 4
gpt4 key购买 nike

我有 3 个表,订单,产品和数据透视表,order_products,表订单和产品有很多关系,但是当我尝试使用该方法时

order.addProduts()
不工作,返回错误
UnhandledPromiseRejectionWarning: TypeError: Order.addProducts is not a function
但是我已经验证了我的产品和订单模型,关系还可以,我没有发现任何问题
当我尝试使用该方法时,我的模型和 Controller :
class Products extends Model {
static init(sequelize) {
super.init({
name: DataTypes.STRING,
price: DataTypes.FLOAT,
description: DataTypes.STRING
},{
sequelize
})

}
static associate(models){
this.belongsToMany(models.Orders, {as: 'order_product', foreignKey: 'product_id', through: 'order_products'})
}
}
module.exports = Products;


class Orders extends Model {
static init(sequelize) {
super.init({
name: DataTypes.STRING,
street: DataTypes.STRING,
phonenumber: DataTypes.STRING,
number: DataTypes.STRING,
reference: DataTypes.TEXT,
note: DataTypes.TEXT,


}, {
sequelize,
})
}
static associate(models){
this.belongsToMany(models.Products, {as: 'product_order', foreignKey: 'order_id', through: 'order_products'})
}

}

我的 Controller
async store (req, res){
const {name, phonenumber, street, number, reference, note, value_subtotal, value_delivery, value_total, products} = req.body;
if(!(name|| phonenumber || value_subtotal || value_total))return res.status(406).send({message: 'missing data!'})
if((value_total|| value_subtotal) <= 0)return res.status(406).send({message: "total value or subtotal value can't be 0 or less than"})

//console.log(products)
const Order = await Orders.create({
name,
phonenumber,
street,
number,
reference,
note,
value_subtotal,
value_delivery,
value_total
})
await Order.addProducts(products)
return res.status(201).json(Order);
},

最佳答案

not confirmend but i think you are using Order.addProducts() instead of order.addProduts();

关于node.js - 方法 set/add 不是一个函数 sequelize node js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69530465/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com