簡體   English   中英

Ruby Time.now和其他日期

[英]Ruby Time.now and Other dates

我需要在變量中得到三個日期

今天午夜以來,我有

t = Time.now.strftime(“%Y-%m-%d 00:00:01”)#2012-11-19 00:00:01

昨天午夜(即00:00:00至23:59:59)

y1 = 2012-11-18 00:00:01
y2 = 2012-11-19 23:59:59

特別是我需要將其創建為字符串以在gem中使用的y1和y2變量。 對ruby不熟悉我有點困惑,因為Time.yesterday似乎沒有做我需要的東西

編輯

為此,一定要包括

需要'active_support / all'

並確保寶石捆綁為您的應用程序。

用過的:

@current   = (Time.now).beginning_of_day.utc.strftime("%Y-%m-%d")
@yesterday = (Time.now - 1.day).beginning_of_day.utc.strftime("%Y-%m-%d")
@everything = (Time.now - 2.day).end_of_day.utc.strftime("%Y-%m-%d")

你可以做,

 t=Time.now
 y1=t-1.day
 y2=t+1.day
t = Time.now
t - 1.day # => yesterday
t + 1.day # => tomorrow

首先將t轉換為日期,

t = t.to_date

t - 1.day # => yesterday
t + 1.day # => tomorrow

由於您正在運行Rails,因此可以從ActiveSupport獲取幫助

1.day.ago.midnight
Time.new.beginning_of_day

您還應該考慮不使用2012-11-19 00:00:012012-11-19 23:59:59 相反,您可以使用00:00:00並與> =或<進行比較,具體取決於您想要實現的目標。 如果你總是圓到秒,那么2012-11-19 00:00:002012-11-19 23:59:59就行了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM