我要选择用户详细信息作为表格结构。
表用户列{user_id,region_id,user_name}
表区域列{region_id,country_id}
表国家/地区列{country_id,country_name}
我已将表格模型加入
db.user.hasOne(db.region, {foreignKey:"region_id", targetKey:"region_id"});
db.region.hasOne(db.country,{ foreignKey :"country_id", targetKey:"country_id" });
db.user.hasOne(db.country,{through:db.region,otherKey :"country_id", foreignKey :"user_id" });
现在我要选择包含地区名称的用户详细信息,并在此处包含国家名称是我的控制器
models.user.findAll(
{
include: [
{
model: models.region,
model: models.country
}
]
});
但此节目用户未与国家/地区
相关联请救救我
答案 0 :(得分:1)
它应该是多级联接作为您的架构
models.user.findAll(
{
include: [
{
model: models.region,
include:[{model:models.country}]
}
]
});
提供用户所属的区域,区域属于国家 你可以搜索更多关于关系的一些例子
一对一关系:作为用户,您可以拥有一个(hasOne) 轮廓。当然逆也适用。个人资料(belongsTo)a 用户。用户不能拥有多个配置文件,而配置文件则不能 属于多个用户。
另外
我们可以使用belongsTo方法定义hasOne关系的倒数。