嗨,聪明的人,我对(多对多)与续集或 orm 的关联有问题



我对续集ORM的(多对多(连接有问题

就我而言,我有 3 张桌子

产品 类别 products_categories

这是nodeJS中的关联

Product.belongsToMany(Categories, {
through: {
model: ProductsCategories,
as: 'products_categories',
},
foreignKey: "category_id"
})
Categories.belongsToMany(Product, {
through: {
model: ProductsCategories,
as: 'products_categories',
},
foreignKey: "product_id"
})

当我尝试获取带有类别的产品时 续集不给我产品类别

这是示例

const products = await Product.findAll({
include:{
model:Categories,
nested:true,
through:{
model: ProductsCategories,
as: 'products_categories',
}
}
});

请帮助我了解我的错误在哪里((

请将您的模型定义更正为:

Product.belongsToMany(Categories, {
through: ProductsCategories,
as: 'products_categories',
foreignKey: "category_id"
})
Categories.belongsToMany(Product, {
through: ProductsCategories,
as: 'products_categories',
foreignKey: "product_id"
})

并找到全部:

const products = await Product.findAll({
include:{
model:Categories,
as: 'products_categories'
}
});

最新更新