如何使用 Sequelize 将附加列添加到 belongsToMany 关联
How can I add an additional column to the belongsToMany Association using Sequelize
我正在使用 Node、Express、Postgres 和 Sequelize
您好,我正在使用 Sequelize,我成功地通过 table 为我的 Postgres 数据库创建了 belongsToMany。但是我想在其中添加一个额外的列,但不知道该怎么做,我在网上搜索过也没有找到答案。
我得到了这两个 tables:
- 客户
- 商店产品
下面是我使用 belongsToMany
关联(多对多)创建第三个 table 的 Sequelize 方法,我将调用 table order_list.
customer.belongsToMany(storeProduct, {
through: 'order_list',
unique: false,
foreignKey: 'customers_cid',
// How can I add this additional column quantity to it?
quantity: { /// How do I add it?
type: DataTypes.INTEGER
}
});
storeProduct.belongsToMany(customer, {
through: 'order_list',
unique: false,
foreignKey: 'store_products_spid',
// How can I add this additional column quantity to it?
quantity: { /// How do I add it?
type: DataTypes.INTEGER
}
});
sequelize.sync({ alter: true });
那么我如何才能成功地将类型为 INTEGER 的 I 数量列添加到这个新的 order_list table?
提前致谢!
您需要使用附加列显式定义 OrderList
模型,然后在选项 through
中的 belongsToMany
中使用它。
请参阅官方文档中的 Advanced Many-To_many 指南。
示例:
const User_Profile = sequelize.define('User_Profile', {
selfGranted: DataTypes.BOOLEAN
}, { timestamps: false });
User.belongsToMany(Profile, { through: User_Profile });
Profile.belongsToMany(User, { through: User_Profile });
我正在使用 Node、Express、Postgres 和 Sequelize
您好,我正在使用 Sequelize,我成功地通过 table 为我的 Postgres 数据库创建了 belongsToMany。但是我想在其中添加一个额外的列,但不知道该怎么做,我在网上搜索过也没有找到答案。
我得到了这两个 tables:
- 客户
- 商店产品
下面是我使用 belongsToMany
关联(多对多)创建第三个 table 的 Sequelize 方法,我将调用 table order_list.
customer.belongsToMany(storeProduct, {
through: 'order_list',
unique: false,
foreignKey: 'customers_cid',
// How can I add this additional column quantity to it?
quantity: { /// How do I add it?
type: DataTypes.INTEGER
}
});
storeProduct.belongsToMany(customer, {
through: 'order_list',
unique: false,
foreignKey: 'store_products_spid',
// How can I add this additional column quantity to it?
quantity: { /// How do I add it?
type: DataTypes.INTEGER
}
});
sequelize.sync({ alter: true });
那么我如何才能成功地将类型为 INTEGER 的 I 数量列添加到这个新的 order_list table?
提前致谢!
您需要使用附加列显式定义 OrderList
模型,然后在选项 through
中的 belongsToMany
中使用它。
请参阅官方文档中的 Advanced Many-To_many 指南。
示例:
const User_Profile = sequelize.define('User_Profile', {
selfGranted: DataTypes.BOOLEAN
}, { timestamps: false });
User.belongsToMany(Profile, { through: User_Profile });
Profile.belongsToMany(User, { through: User_Profile });