团队与播放器之间存在 M:N 关系。对于这种关系,我创建了一个模型 TeamPlayer 和一个belongsToMany
关联:
const TeamPlayer = Sequelize('team_player', {
tp_code : [...] // PK
id_team : [...] // FK to Team,
id_player : [...] // FK to Player,
position : Sequelize.STRING,
});
Team.Players = Team.belongsToMany(Player, {
through : TeamPlayer,
foreignKey : id_player
});
这很好,因为我能够为每个团队检索一个玩家列表,但position
字段没有包含在生成的SQL中。选择的唯一字段是tp_code
和id_team
。
文档对于理解如何正确设置belongsToMany
关系没有多大帮助,但我想知道是否有任何用于获取中间表字段的配置,或者我是否需要手动定义连接语句。