Kat*_*oak 4 node.js sequelize.js
我很难在查询中使用 BelongsTo 关系。
这是关系:
models.Area.hasMany(models.Airport);
models.Airport.belongsTo(models.Area, {foreignKey: 'areaId', as: 'area'});
Run Code Online (Sandbox Code Playgroud)
现在我尝试运行一个查询:
models.Airport
.findAll( {
where: { active: 1 },
include: { model: models.Area }
})
Run Code Online (Sandbox Code Playgroud)
我收到一个错误:
Error: area is not associated to airport!
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
我想到了。我不能说我完全理解这个问题,但就是这样。
创建关系时,我使用 as:'area'。
结果是,我需要将 as: 'area' 添加到 include 语句中:
models.Airport
.findAll( {
where: { active: 1 },
include: { model: models.Area, as: 'area' }
})
Run Code Online (Sandbox Code Playgroud)
一旦两者匹配,事情就会变得更好。
| 归档时间: |
|
| 查看次数: |
3868 次 |
| 最近记录: |