Sequelize属于包括

时间:2016-05-03 11:51:47

标签: node.js sequelize.js

我很难在查询中使用BelongsTo关系。

这是关系:

models.Area.hasMany(models.Airport);
models.Airport.belongsTo(models.Area, {foreignKey: 'areaId', as: 'area'});

现在我尝试运行查询:

models.Airport
    .findAll( {
        where: { active: 1 },
        include: { model: models.Area }
        })

我收到错误:

   Error: area is not associated to airport!

我做错了什么?

1 个答案:

答案 0 :(得分:4)

我明白了。我不能说我完全理解这个问题,但现在就是。

创建关系时,我使用as:'area'。

结果是,我需要在include语句中添加as:'area':

models.Airport
.findAll( {
    where: { active: 1 },
    include: { model: models.Area, as: 'area' }
    })

两场比赛结束后,情况会好转。