Tengo 2 modelos: cart y cartdetail. Quiero crear datos en el carrito modelo y en el detalle del carrito modelo también crear automáticamente.
Sin embargo, solo se crea en carritos de mesa, los detalles del carrito de mesa no se crean. cómo puedo crearlo con asociación a cartdetaile. Por favor, ayúdame. Muchísimas gracias.
carrito.js
"use strict"; const { Model } = require("sequelize"); module.exports = (sequelize, DataTypes) => { class cart extends Model { /** * Helper method for defining associations. * This method is not a part of Sequelize lifecycle. * The `models/index` file will call this method automatically. */ static associate(models) { cart.hasMany(models.cartdetail, { foreignKey: "cartID", }); } } cart.init( { userId: DataTypes.INTEGER, payment_method: DataTypes.STRING, price: DataTypes.INTEGER, status: DataTypes.INTEGER, address_id: DataTypes.INTEGER, }, { sequelize, modelName: "cart", } ); return cart; };cartdetail.js
"use strict"; const { Model } = require("sequelize"); module.exports = (sequelize, DataTypes) => { class cartdetail extends Model { /** * Helper method for defining associations. * This method is not a part of Sequelize lifecycle. * The `models/index` file will call this method automatically. */ static associate(models) { cartdetail.belongsTo(models.cart); } } cartdetail.init( { cartID: DataTypes.INTEGER, producID: DataTypes.INTEGER, quality: DataTypes.INTEGER, price: DataTypes.INTEGER, }, { sequelize, modelName: "cartdetail", } ); return cartdetail; };Ejemplo:
await db.cart.create( { userId: data.jwtDecoded, payment_method: data.body.payment_method, price: data.body.total, status: data.body.status, address_id: data.body.address_id, cartdetail: [{ quality: "123" }], }, { include: [db.cartdetail], } );