Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 按人口统计组分列的结果_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails 按人口统计组分列的结果

Ruby on rails 按人口统计组分列的结果,ruby-on-rails,ruby,Ruby On Rails,Ruby,我有一个web应用程序,可以汇总调查结果。在调查中,每位调查对象选择其性别和年龄范围(男性除外,18-30岁)。然后,受访者回答了两个关于他们对某个主题感兴趣的问题(每个问题的分值为1-100) 我希望web应用程序的用户能够根据不同的人口统计组合来削减调查结果。例如,如果用户希望看到18-30岁男性每个问题的平均分数,他们会从一个选择框中选择男性,从第二个选择框中选择18-30 我已经能够使用以下方法获得与年龄和性别的所有组合相关的分数列表: def averagedemo_score

我有一个web应用程序,可以汇总调查结果。在调查中,每位调查对象选择其性别和年龄范围(男性除外,18-30岁)。然后,受访者回答了两个关于他们对某个主题感兴趣的问题(每个问题的分值为1-100)

我希望web应用程序的用户能够根据不同的人口统计组合来削减调查结果。例如,如果用户希望看到18-30岁男性每个问题的平均分数,他们会从一个选择框中选择男性,从第二个选择框中选择18-30

我已经能够使用以下方法获得与年龄和性别的所有组合相关的分数列表:

def averagedemo_score
    scores.select("AVG(scoreone) as avg_demoscoreone, AVG(scoretwo) as avg_demoscoretwo, gender").group("gender", "age")
end    
在我的控制器中:

@demogenagescore = @athlete.averagedemo_score.to_a.sort_by{|e| e[:gender]}
我遇到的问题是创建一种只显示与选择框中所选内容相对应的分数的方法。例如,第一个选择框的代码为:

<%= f.select :gender, options_for_select([[''],['Male'],['Female']], :selected => :gender) %>
:性别)%>

如果您能帮助解决这个问题,我们将不胜感激。如果您需要更多信息,请告诉我。谢谢

我建议您看看一些jQuery方法来完成客户端的工作,比如说,您可以用更好的方式编写这个问题,并将其推广。这种方式太本地化了。