【发布时间】:2021-05-30 13:35:05
【问题描述】:
我有一个模型 SKUValue,它与另外两个模型 VariantOptions 和 ProductVariant 相关联。 我用 VariantOptions 和 ProductVariant 创建了一个 "left-joins" SKUValue 值的 sequelize 查询,并带来了结果.
序列化查询
await SKUValue.findAll({
where: {
productId: '7bde8a1d-5f6c-4349-bfda-428399c88291'
},
include: [
{
model: VariantOption,
attributes: ['name']
},
{
model: ProductVariant,
attributes: ['name']
}
],
attributes: ['SKUId']
});
查询结果返回一个数组,其中属性VariantOption和ProductVariant是一个嵌套对象,只有一个字段。
[
{
"SKUId": "72edd3ca-fa12-4234-ba8c-dd008eb416d5",
"VariantOption": {
"name": "Large"
},
"ProductVariant": {
"name": "Size"
}
},
{
"SKUId": "72edd3ca-fa12-4234-ba8c-dd008eb416d5",
"VariantOption": {
"name": "Red"
},
"ProductVariant": {
"name": "color"
}
}
]
如何查询属性,VariantOption 和 ProductVariant 的结果不返回嵌套对象,而只返回搅拌。
一般来说,我希望结果是这样的
[
{
"SKUId": "72edd3ca-fa12-4234-ba8c-dd008eb416d5",
"VariantOption.name": "Large",
"ProductVariant.name": "Size"
},
{
"SKUId": "72edd3ca-fa12-4234-ba8c-dd008eb416d5",
"VariantOption.name": "Red",
"ProductVariant.name": "Color"
}
]
【问题讨论】:
标签: node.js sequelize.js associations