1

特定のteam_idが割り当てられているユーザーの数を数えようとしています。現在、usersテーブルとteamsテーブルがあり、usersテーブルにはbelongs_toteamsテーブルがあり、teamsテーブルにはユーザーとの多対多の関係があります。

私のteams_helperに次のコードがあります

def number_of_players(team)
  User.count("team_id", :conditions => team_id= :team)
end

そして、私はこれを私の見解で呼んでいます:

%td= number_of_players(team.id)

私が抱えている問題は、正しくカウントされていないことです。

4

1 に答える 1

1

どのようにそのことについて?

# if team is an integer
def number_of_players(team)
  User.where(:team_id => team).count
end

または

# if team is an instance of Team and `has_many :users`
def number_of_players(team)
  team.users.count
end
于 2012-06-21T14:21:39.203 に答える