2012-06-21 40 views
1

我正在尝试计算分配给它们的某个team_id的用户数量。 目前我们有一个用户表和一个团队表,我们的用户表有一个belongs_to我们的团队表和团队表与用户有多对多的关系。从另一个表中统计用户

我在teams_helper

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

下面的代码,我在我的观点调用此:

%td= number_of_players(team.id) 

我遇到的问题是,是不正确的计数。

回答

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 
+0

第一种方法工作。谢谢 –

相关问题