我有一个解决方案,我想判断一下return_service_date是否是今天,怎么做?
这是我的代码(rails):
if settlement.return_service_date &&
settlement.return_service_date.to_s(:date) == Time.now.to_s(:date)
有更好的方法吗?
答案 0 :(得分:22)
在Rails中,you can do:
settlement.return_service_date.today?
答案 1 :(得分:8)
对于没有使用rails的每个人,我的带有Time的纯红宝石解决方案如下所示,如果你有Dates而不是Times,你可以用.to_time()
转换它们。 # current time
time = Time.new()
# some time
some_time = Time.new() + 7550
# set beginning of today
today_start = Time.new(time.year,time.month,time.day)
# set ending of today
today_end = today_start + 86399
# check if some_time is in between today start and end
puts (today_start..today_end).cover?(some_time)
根据您当前的时间打印为真(如果您的日期仍然至少还剩7550秒)或者为假。