gpt4 book ai didi

ruby-on-rails - 如何使用 activerecord 和 POSTGRES 平均产品评论分数

转载 作者:行者123 更新时间:2023-11-29 11:32:23 25 4
gpt4 key购买 nike

假设我有一张包含 100 条产品评论的表格。每条评论都有一个“id”、“product_id”和“score”。现在,我想要做的是显示每个产品的平均分数......那么有没有办法使用 Rails 查询数据库来执行此操作?我敢肯定一定有,但我想不通。我希望发生以下情况:

Toyota Corolla 70%
Toyota Camry 78%
Toyota Avalon 80%

.. 显然是基于对每个平均的多个评论,但以上述方式呈现。

更新:

对于那些对解决方案感兴趣的人

这是在 Controller 中:

@ordered_hash = Review.group('aidmodel_id').average('score')
@keys = @ordered_hash.keys
@reviews = Review.where(:aidmodel_id=>@keys).uniq_by {|x| x.aidmodel_id}

这是在 View 中:

<% @reviews.each do |review| %>

<%= review.aidmodel.id %>
<%= @ordered_hash[review.aidmodel_id] %>

<% end %>

@ordered_hash[review.aidmodel_id] 行提供具有所需 ID 的 aidmodel 的平均分数。

最佳答案

你可以混合averagegroup做类似的事情

MyClass.group('product_id').average('score')
# => {product_id1 => average1, product_id2 => average2, ... }

关于ruby-on-rails - 如何使用 activerecord 和 POSTGRES 平均产品评论分数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9753909/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com