您好我在尝试计算如何在Rails中创建列表时遇到了问题。我的问题是我有一个Team对象,然后我有一个包含hometeam和awayteam的fixture对象,我希望能够自动生成灯具,例如我有20个团队,所以每个团队有38个游戏,他们需要在每个团队主场和远程玩,我怎样才能创建一个灯具列表来满足这些要求,或者是否可以在Rails中使用。通过让每个团队在家里玩每个人,一旦它也会创造所有的远程固定装置。
答案 0 :(得分:2)
Ruby Array有一个方法combination
来完成这项工作。 http://www.ruby-doc.org/core-1.9.3/Array.html#method-i-combination
像
这样的东西teams = Team.all.to_a # or any selection of teams
teams.combination(2) do |first_team, second_team|
Fixture.create!(hometeam: first_team, awayteam: second_team)
Fixture.create!(hometeam: second_team, awayteam: first_team)
end
将为20支球队创造所有380个赛程。