您如何在 Sequelize 中连接 3 个未全部链接的表
How do you join 3 tables in Sequelize that aren't all linked
我有 4 个表 Properties、Units、Leases、LeaseRates。
Units
Leases
LeaseRates
propertyId
unitId
leaseId
都是和最后一个id关联的
我有这样的关系设置
Properties.hasMany(Units);
Units.belongsTo(Properties);
Units.hasMany(Leases);
Leases.belongsTo(Units);
Leases.hasMany(LeaseRates);
LeaseRates.belongsTo(Leases);
在 Sequelize 中有没有简单的方法让我通过 propertyId
查询 LeaseRates
?
<pre>
await properties.findOne({
where: { id },
include: [{
model: model.Unit, as: 'unit',
attributes: ['id'],
include: [{
model: model.Leases, as: 'leases',
attribute: ['id'],
include: [{ model: model.LeaseRates, as: 'leaserates' }]
}]
}]
})
</pre>
我有 4 个表 Properties、Units、Leases、LeaseRates。
Units | Leases | LeaseRates |
---|---|---|
propertyId | unitId | leaseId |
都是和最后一个id关联的
我有这样的关系设置
Properties.hasMany(Units);
Units.belongsTo(Properties);
Units.hasMany(Leases);
Leases.belongsTo(Units);
Leases.hasMany(LeaseRates);
LeaseRates.belongsTo(Leases);
在 Sequelize 中有没有简单的方法让我通过 propertyId
查询 LeaseRates
?
<pre>
await properties.findOne({
where: { id },
include: [{
model: model.Unit, as: 'unit',
attributes: ['id'],
include: [{
model: model.Leases, as: 'leases',
attribute: ['id'],
include: [{ model: model.LeaseRates, as: 'leaserates' }]
}]
}]
})
</pre>