Node.js Sequelizejs从关系表中获取字段,并将其放入关联项中
我正在使用Node.js Sequelizejs从关系表中获取字段,并将其放入关联项中,node.js,postgresql,sequelize.js,Node.js,Postgresql,Sequelize.js,我正在使用Sequelizejs@4.37.6在具有以下架构的Postgre数据库节点上: playersSchema id first_name last_name ... status id name ... status id player_id sport_id rating trophies sportsSchema id first_name last_name ... status id name ... status id player_id sport_id rati
Sequelizejs@4.37.6
在具有以下架构的Postgre数据库节点上:
players
Schema
id
first_name
last_name
...
status
id
name
...
status
id
player_id
sport_id
rating
trophies
sports
Schema
id
first_name
last_name
...
status
id
name
...
status
id
player_id
sport_id
rating
trophies
player\u sports
Schema
id
first_name
last_name
...
status
id
name
...
status
id
player_id
sport_id
rating
trophies
我的联想是
Player.belongsToMany(Sport, {through: 'player_sports', foreignKey: 'player_id'});
PlayerSport.hasOne(Player, {foreignKey: 'id'});
PlayerSport.hasOne(Sport, {foreignKey: 'id'});
我查询所有运动员与体育如下
Player.findAll({
include: ['sports']
});
一切都按预期进行,但我还希望在关系中有评级
和奖杯
字段,请建议一种在player或player.sports中获取这些内容的方法
提前感谢您可以从玩家
处获得评级
,奖杯
,如下所示:
player.sports.player\u sports.奖杯
player.sports.player\u sports.rating
如果出现错误,请尝试将PlayerSport
关联更改为此关联:
PlayerSport.belongsTo(Player, {foreignKey: 'player_id'});
PlayerSport.belongsTo(Sport, {foreignKey: 'sport_id'});