gpt4 book ai didi

node.js - 在 Sequelize 中使用嵌套关联时遇到问题

转载 作者:行者123 更新时间:2023-12-03 22:27:52 27 4
gpt4 key购买 nike

在 Sequelize 和 Node.js 中的关联方面遇到一些麻烦。这是一个我正在整理的简单 API(没有前端)。

我正在尝试在客户和地址模型之间做一个简单的一对多关联。

const Customer = sequelize.define('Customer', { /* stuff */ });
const Address = sequelize.define('Address', { /* stuff */ });

Customer.hasMany(Address);
Address.belongsTo(Customer);

我的目的是返回一个带有关联地址列表的客户对象,如下所示:
{
customer: {
name: "Customer Name",
// more customer fields...
addresses: [
{ /* address fields */ },
{ /* address fields */ },
]
}
}

到目前为止,在我的 Controller 中,我正在执行以下操作:
 Customer
.findById(id)
.then(customer => {
customer.getAddresses()
.then(addresses => {
response.json({
customer: customer,
addresses: addresses,
});
});
});

返回:
{
customer: {
name: "Customer Name",
// more customer fields...
},
addresses: [
{ /* address fields */ },
{ /* address fields */ },
]
}

任何建议将是最受欢迎的。

最佳答案

您可以在 fetch 中对关联模型进行 include:

Customer
.findById(id, {
include: [{
model: Address
}]
})
.then(customer => {
response.json({customer});
});

有关更多信息,请参阅 docs

关于node.js - 在 Sequelize 中使用嵌套关联时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49287040/

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