gpt4 book ai didi

node.js - 如何在sequelize中从目标表中查找源表的数据?

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

我有两个表, tradersmessages
交易者与消息相关联,如下所示

traders.hasMany(models.messages, {as: 'sender',foreignKey : 'senderId'});
traders.hasMany(models.messages, {as: 'reciever',foreignKey : 'recieverId'});

现在,当我尝试使用以下代码查找交易者名称以及所有消息时
   ctx.body = await ctx.db.messages.findAll({
include:[{
model: ctx.db.traders,
as:'sender'
}],
attributes:['type',['data','message'],'createdAt','senderId','name'],
where:{
conversationId:ctx.request.body.conversationId
}
})

我收到以下错误
SequelizeEagerLoadingError: traders is not associated to messages!

最佳答案

尝试从两种模型中进行关联,例如,

traders.hasMany(models.messages, {
as: 'sender',
foreignKey: 'senderId'
});

messages.belongsTo(models.traders, {
as: 'sender',
foreignKey: 'senderId'
});

关于node.js - 如何在sequelize中从目标表中查找源表的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52356135/

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