如何查询按日期过滤的活动记录?
How to query the active record filtering by date?
我如何才能 select ALL students 我的数据库中只有 5 月份处于活动状态的学生?我在活动记录文档中找不到它。我只查询了五月份创建的学生,没有ALL students active....
Student.where(status:'active', created_at: ('2021-05-01'..'2021-05-31')).count
其实我的想法是这样的:
Student.where(status:'active', datetime: (('2021-05-01'..'2021-05-31')).count
您需要像这样解析日期:
Student.where(status:'active', created_at: (Date.parse('2021-05-01')..Date.parse('2021-05-31'))).count
您还可以让 Rails 设置月份的开始和结束:
Student.where(status:'active', created_at: (Time.new(2021, 5).beginning_of_month..Time.new(2021, 5).end_of_month))).count
如果状态是 enum 你也可以这样查询:
Student.active.where(created_at: (Time.new(2021, 5).beginning_of_month..Time.new(2021, 5).end_of_month))).count
我如何才能 select ALL students 我的数据库中只有 5 月份处于活动状态的学生?我在活动记录文档中找不到它。我只查询了五月份创建的学生,没有ALL students active....
Student.where(status:'active', created_at: ('2021-05-01'..'2021-05-31')).count
其实我的想法是这样的:
Student.where(status:'active', datetime: (('2021-05-01'..'2021-05-31')).count
您需要像这样解析日期:
Student.where(status:'active', created_at: (Date.parse('2021-05-01')..Date.parse('2021-05-31'))).count
您还可以让 Rails 设置月份的开始和结束:
Student.where(status:'active', created_at: (Time.new(2021, 5).beginning_of_month..Time.new(2021, 5).end_of_month))).count
如果状态是 enum 你也可以这样查询:
Student.active.where(created_at: (Time.new(2021, 5).beginning_of_month..Time.new(2021, 5).end_of_month))).count