2016-09-19 64 views
0

sidekiq工作人員將電子郵件中的PDF附件發送給客戶。該工作人員每天運行檢查其星期日是否發送每週報告,如果今天是月份的第15個月,那麼雙月報告以及月份的最後一天,然後是月度報告。條件看起來像這樣:Rails 4:檢查今天是星期日,月的第15天還是月的最後一天

if sunday? 
    # send weekly 
elsif 15th of month 
    # send Bi-monthly 
elsif last_day_of_month 
    # send Monthly 
end 

如何檢查其星期日,月的15日和月的最後一天?

回答

6

Rails有這類日期計算的許多有趣的方法:

today = Date.today 

if today.sunday? 
    # send weekly 
elsif today.day == 15 
    # send bi-monthly 
elsif today == today.end_of_month 
    # send monthly 
end 
+0

感謝,正是我需要的。 – Arif

+0

在純Ruby中,'if'和第一個'elsif'子句是相同的。最後一個需要Rails的一部分,但可以用'elsif today == Date.new(today.year,today.mon,-1)'替換,這是純Ruby。 –

相關問題