循环并添加到数组

时间:2014-04-17 22:10:47

标签: ruby-on-rails

我正在尝试通过循环并找到具有我的玩家ID的团队来将多个团队添加到数组中。我只获得了与我的播放器连接的最后一支队伍。我做错了什么。

@players = @user.players
@team = Team.all
@players.each do |player|
  @t = @team.find(player.team_id)
  @teams = Array.new
  @teams.push(@t)
end

1 个答案:

答案 0 :(得分:1)

在循环外实例化数组。正如您所知,@teams = Array.new将在每次迭代时创建一个新的@teams数组。

@players = @user.players
@team = Team.all
@teams = Array.new
@players.each do |player|
  @t = @team.find(player.team_id)
  @teams.push(@t)
end