我有一个用户表,该用户表已通过用户ID与资产表关联。我从用户表到资产表创建了hasMany关联,从资产表到用户表创建了belongsTo关联。当我在资产表上执行findAll时,我会根据建立的关联获得正确的用户信息。问题在于用户记录具有密码哈希和我确实想要的其他属性。我只想要这个关联附带的名称。
我尝试使用关联内的attribute标记,但这没用。
Model.associate = (models) => {
Model.belongsTo(models.User, {
as: 'user'
});
}
Model.associate = (models) => {
Model.hasMany(models.Asset);
}
如果我可以排除列,则只能期望从用户表中看到用户的名字和姓氏。
答案 0 :(得分:0)
您可以指定这样的属性
attributes: ['firstname', 'lastname']
因此查询将类似于
const assets = await asset.findAll({
attributes: ['attributes that you want to be included for assets table'],
include: [{
model: User,
attributes: ['firstname', 'lastname'],
}]
})