ActiveSupportで日時変換

Railsではたまに1.week.from_nowといった書き方を見ます
これはActiveSupportによってnumericクラスが拡張されているもので、様々な指定方法があります

例えば、?時からその日中(23:59まで)のデータをfindしたい場合、
[rails]
# 12:00~23:59まで
date = Time.parse(“12:00″)
cond = []
cond << "created_at > ? AND created_at < ?"
cond << date
cond << (date + 1.day).beginning_of_day
@data = Model.find(:all, :conditions => cond)
[/rails]

といった書き方が出来ます
beginning_of_dayは時間の部分をその日の00:00に変換したtimeオブジェクトを返します(Time型のみ)

Rails の Date, Time 拡張

カテゴリー: All   タグ:   この投稿のパーマリンク

コメントをどうぞ

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>