我正在尝试has_many through
与多个来源建立关系。
例如,一个游戏有一个home_team
和away_team
一个锦标赛有多个游戏。
使用 has_many through games 关系让所有球队参加比赛的最佳方法是什么。
现在我的代码如下所示:
class Tournament
has_many :teams, :through => :games, :source => :home_team, :uniq => true
end
但我想要一些方法让它表现得像:
class Tournament
has_many :teams, :through => :games, :source => [:home_team, :away_team], :uniq => true
end
编辑:多对多关系不是我的问题。有没有一种好方法可以让锦标赛中的所有球队都假设结构如下。
class Game
has_and_belongs_to_many :tournaments
belongs_to :home_team, :class_name => Team, :foreign_key => :home_team_id
belongs_to :away_team, :class_name => Team, :foreign_key => :away_team_id
end
class Tournament
has_and_belongs_to_many :games
end
有办法Tournament.teams
吗?