Activesupportの日付の最初と最後

| Comments

activesupportの日付計算は、とっても便利です。

とは言え、どんなメソッドが実装されているかは全部把握していません。(私は)

今回は、仕事で色々な期間を選択する必要が合ったのですが
そこで役に立ったのは beginning_of_xxx (end_of_xxx) です。

これらは、与えられた日付から適切な最初(最後)に補正してくれます。
例えば、今週の月曜日なら

今週の月曜日 - beginning_of_this_week.rb
1
Time.now.beginning_of_week

という具合です。

応用すると『ある日付の含まれる週に、この日が含まれるか?』も一行で(読みやすく?)出来ます。 みたいな事が書けちゃいます。

ある日付の含まれる週に、この日が含まれるか? - in_this_week.rb
1
(Date.parse('4/30').beginning_of_week .. Date.parse('4/30').end_of_week ).include?( Date.parse('5/1') )

この beginning_of_xxx (end_of_xxx) には

  • day
  • week
  • month
  • year
  • quarter

が使えるみたいです。

Comments