【问题标题】:Rails get most recommended productRails 获得最推荐的产品
【发布时间】:2020-07-07 07:34:38
【问题描述】:

我有: Product => has_many :reviews Review 有一个字段recommendation:boolean

我需要检索拥有最多Review.recommendation:true 的产品 这里的最佳方法是什么?

产品还必须出现在给定的类别数组中。 我正在尝试这样的事情:

Product.joins(:reviews).where('category_id IN (?)', categories_ids).where(reviews: {recommendation: true}).group(:id)

谢谢。

【问题讨论】:

    标签: postgresql activerecord ruby-on-rails-5


    【解决方案1】:

    这最终成为我的方法:

    res = Product.joins(:reviews).where('category_id IN (?)', categories_ids).where(reviews: {recommendation: true}).group(:id).count
        result = res.sort_by {|k,v| v}
        id = result.last[0]
        Product.find(id)
    

    【讨论】:

      猜你喜欢
      • 2016-03-03
      • 1970-01-01
      • 2010-10-22
      • 2014-07-21
      • 2011-10-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多