findOne with include doesn工作。它只是给我没有数据。交易数据与Redemption []< - 这里应该是数据
Deal.belongsTo(models.Redemption, {
foreignKey: 'redemptionId',
unique: true
})
Redemption.hasOne(models.Deal, {foreignKey: {
name: 'redemptionId',
unique: true
}})
我试图包含赎回的代码
await Deal.find({
where: {
id: req.params.id,
userId: req.user.id
},
include: [Redemption]
}, {transaction})
所以我期待交易数据与兑换(包括表格)。
JSON
Redemptions:[] <--- empty
address:"62720 Rety, France"
business_name:"rwqrq"
category:null
cloudinary_key:"uzjwyyoritb5v81e3vba"
createdAt:"2017-09-27T14:09:30.469Z"
details:"trhrht"
end:"2017-10-03T21:00:00.000Z"
group_size:"—"
id:3
location:{type: "Point", coordinates: [50.792905, 1.7773789999999963]}
redemptionId:3
答案 0 :(得分:0)
Redemption.hasOne(...)
在您的交易中生成一个专栏&#39;表叫做“赎回”#39;因此,您可以使用&#39; redemtionId&#39;找到交易。但是在你的查询中,你试图通过使用&#39; dealId&#39;来找到赎回。我相信这就是问题所在。如果您确实需要Redemption,则必须进行另一次查询。
仅供参考:我不是专家,但我最近使用的是sequelize。我很想从专家那里听到更多。谢谢