belongs_to
2 つのチームを持つゲーム モデルがあるとします。
class Game < ActiveRecord::Base
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
チームは、Team クラスの次のメソッドを使用してゲームを見つけることができます。
def games
Games.where("home_team_id = ? OR away_team_id = ?", self.id, self.id)
end
次に@team.games.upcoming
、Game クラスのこのメソッドを使用して使用します。
def self.upcoming
where("starts > ?", DateTime.now)
end
スコープは一緒にマージされ、完全に機能しました。
今、私はこれを可能にするメソッドを書こうとしています:
@team.games.won
で確認できます
@team.games.where("home_team_id = ? AND home_score > away_score OR away_team_id = ? AND away_score > home_score", ?????, ?????)
しかし、?????の正しいチームIDを渡す方法がわかりません。これは可能ですか?以前に尋ねられた場合、これを見つけるために何を検索すればよいかわかりません。