実務で役に立つスキル・知識を学び人生を自由にする
info@atri.systems
10:00~17:00(月〜金)

Railsで任意の曜日を取得する方法【初心者】

こんにちは、プログラマーのだいき(@doto_pro)です。

 

今回は、Railsで任意の曜日を取得する方法について書いていこうと思います。

 

基本編

今日の日付・曜日を取得

今日の日付を取得

Date.today
=>2019-01-08

 

今日の曜日(数字)を取得

Date.today.wday
=>2

 

Rubyでは曜日は数字で表示されます。以下は、数字と曜日の対応表となります。

曜日 数字
月曜日
火曜日
水曜日
木曜日
金曜日
土曜日
日曜日

 

今日の曜日(日本語)を取得

youbi = %w[日 月 火 水 木 金 土 日]
 youbi[Date.today.wday]
=>火

 

youbi = %w[日曜日 月曜日 火曜日 水曜日 木曜日 金曜日 土曜日 日曜日]
 youbi[Date.today.wday]
=>火曜日

 

今日の曜日を取得(strftime活用)

Time.now.strftime("%A")
=>Tuesday

 

応用編

今週の曜日の日付を取得する方法

Sunday = Date.now - (Date.now.wday)
 Monday = Date.now - (Date.now.wday - 1)
 Tuesday = Date.now - (Date.now.wday - 2)
 Wednesday = Date.now - (Date.now.wday - 3)
 Thursday = Date.now - (Date.now.wday - 4)
 Friday = Date.now - (Date.now.wday - 5)
 Saturday= Date.now - (Date.now.wday - 6)

 

先週の曜日の日付を取得する方法

Sunday = Date.now - (Date.now.wday -7)
 Monday = Date.now - (Date.now.wday - 8)
 Tuesday = Date.now - (Date.now.wday - 9)
 Wednesday = Date.now - (Date.now.wday - 10)
 Thursday = Date.now - (Date.now.wday - 11)
 Friday = Date.now - (Date.now.wday - 12)
 Saturday= Date.now - (Date.now.wday - 13)

 

特定の日付から曜日を求める

特定の曜日から日付を求める1

youbi = %w[日 月 火 水 木 金 土 日]
 youbi[Date.new(2018,8,12).wday]
=>日

 

特定の曜日から日付を求める1

youbi = %w[日曜日 月曜日 火曜日 水曜日 木曜日 金曜日 土曜日 日曜日]
 youbi[Date.new(2018,8,12).wday]
=>日曜日

 

まとめ

Railsの曜日をどのように表示させるのか悩んでいる人はぜひこれを活用して見てください。

 

以上、プログラマーのだいき(@doto_pro)でした。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です