在sequelize中主动加载belongsTo关系



假设我有以下关系:

User.belongsTo(Image, { foreignKey: 'profileImage' })
Image.hasOne(User, { foreignKey: 'profileImage' })

调用User.findOne(),得到:

> User.findOne()
User {
...
profileImage: 1 // image_id
}

如何加载图像呢,像这样:

> User.findOne({ ... })
User {
...
profileImage: Image {
id: 1 // image_id
...
}
}

我已经尝试使用这里的文档将选项传递给.findOne(),但无法使其工作。

我可以构造一个原始连接或运行多个查询,但我觉得应该有一个很好的方法来实现这一点。

提前感谢您的帮助!

你只需要像这样使用include选项

User.findOne({
include:[{
model: Image
}]
})

参见自动加载

最新更新