Ruby on rails 统计rails中的调查响应

Ruby on rails 统计rails中的调查响应,ruby-on-rails,activerecord,Ruby On Rails,Activerecord,我是rails新手,我想计算每个问题的不同选项的回答总数。如何计算每个问题的平均值。这些是我的模型。谢谢你的帮助 class User < ActiveRecord::Base has_many :surveys end class Survey < ActiveRecord::Base belongs_to :user has_many :questions, :dependent => :destroy end class Question <

我是rails新手,我想计算每个问题的不同选项的回答总数。如何计算每个问题的平均值。这些是我的模型。谢谢你的帮助

class User < ActiveRecord::Base   
  has_many :surveys 
end

class Survey < ActiveRecord::Base
  belongs_to :user
  has_many :questions, :dependent => :destroy 
end

class Question < ActiveRecord::Base
  belongs_to :survey
  has_many   :options, :dependent => :destroy         
  has_many   :answers, :dependent => :destroy
end

class Option < ActiveRecord::Base
  belongs_to :question  
  has_many :answers, :dependent => :destroy
end

class Answer < ActiveRecord::Base
  belongs_to :option   belongs_to :question
end
class用户:破坏
结束
类问题:销毁
有很多:答案,:依赖=>:毁灭
结束
类选项:毁灭
结束
类答案
您只需在问题类中创建一个字段,如
responseCount:integer
,然后在问题控制器中使用
update
来操作数据

def update
  # update 'response' count
end
完成后,您可以通过这样做计算平均值:

@totalResponseCount = 0
@averageResponseCount = 0

for @question.each do  |question|
  totalResponseCount += question.responseCount
  averageResponseCount = totalResponseCount/Question.count
end

您好,您能更新预期结果表模型吗?谢谢,到目前为止你有没有尝试过什么?我想要的是以下内容:假设问题1有两个选项(是,否),是:50个回答,否:10个回答。在此之后,我想计算这个特定问题的每个选项的平均值。