2
背景:我有玩家的has_many團隊模式,它允許一個叫Mongoid:用別名的has_many關係
@team.players
,並獲得Mongoid ::關係::目標::的可枚舉列表球員回來了。目標:我還希望能夠檢索隊伍中特定位置的隊員名單。例如,如果用戶添加一個投手給他的球隊,我可以撥打 @team.pitchers
返回Enumerable投手列表。任何想法如何設置?
背景:我有玩家的has_many團隊模式,它允許一個叫Mongoid:用別名的has_many關係
@team.players
,並獲得Mongoid ::關係::目標::的可枚舉列表球員回來了。目標:我還希望能夠檢索隊伍中特定位置的隊員名單。例如,如果用戶添加一個投手給他的球隊,我可以撥打 @team.pitchers
返回Enumerable投手列表。任何想法如何設置?
不能把條件放在has_many中的mongoid中。
兩種方式我能想到這樣做的是使用@ team.players.pitchers
Class Player
scope :pitchers, where(:position => "pitcher")
end
或定義團隊的方法設定一個範圍,球員和呼叫
Class Team
def pitchers
self.players.where(:position => "pitcher")
end
end