Rails(ActiveRecode)で一週間分のレコードを取得する


取得方法

ActiveSupport の日付関連の拡張を使用する。

item.rb
from  = Time.current.at_beginning_of_day
to    = (from + 6.day).at_end_of_day
items = Item.where(created_at: from...to)

その他

一月間のデータ取得
from  = Time.current.at_beginning_of_day
to    = (from + 1.month)
items = Item.where(created_at: from...to)
一年間のデータ取得
to    = Time.current.at_beginning_of_day
from  = (to - 1.year)
items = Item.where(created_at: from...to)

参考サイト

ActiveSupport の日付関連の拡張のドキュメント

Dateクラス
http://railsdoc.com/references/beginning_of_day#日付関連

DateTimeクラス
http://railsdoc.com/references/beginning_of_day#日時関連

Timeクラス
http://railsdoc.com/references/beginning_of_day#時間関連(TIme)