【发布时间】:2021-06-15 15:57:24
【问题描述】:
我正在构建一个小测验测试应用程序,它允许每个用户参加多个测验,然后为每个测验给出 10 分。
所以一个用户has_many :quizes
并且每个测验都有一个 10 分,用户也可以看到他们的平均分数,这是在用户每次提出请求时动态计算的。这是通过用户模型上的方法完成的
def avg_score
self.quizes.pluck(:score).sum/self.quizes.count
end
对于应用程序的主屏幕,我想显示平均得分高于 8 的所有用户。
无论如何我可以查询这个动态值吗? 还是在 users 表中创建一个字段,然后在每次测验完成时更新值是更好的方法?
【问题讨论】:
标签: ruby-on-rails ruby ruby-on-rails-5