在 Rails 中获取具有日期过滤功能的子模型的条目数

Getting count of entries for a sub-model with date filtering in Rails

我想通过日期过滤获取 Rails 中子模型的对象数。

让我们详细解释一下:

假设我有两个模型。

另外Comment型号属于Post型号

我想按日期范围获取每个 post 的评论数。例如;我只想获取今天的计数。

有没有人知道我如何在没有很多数据库查询的情况下做到这一点?是否可以使用计数器缓存?

一个查询

date_start = params[:date_from].to_date.beginnig_of_day
date_end = params[:date_end].to_date.end_of_day

Post.includes(:comments)
      .where(comments: {created_at: date_start..date_end})
      .group(:id)
      .count