x = Time.now
y = 1.hours.from_now
z = 1.hours.before_now
如果此問題太愚蠢,我很抱歉。我想知道一種有效的方式,以現在的紅寶石前後一小時顯示。 感謝您的收看和幫助。如何從現在開始或在現在一小時之前在紅寶石中顯示
x = Time.now
y = 1.hours.from_now
z = 1.hours.before_now
如果此問題太愚蠢,我很抱歉。我想知道一種有效的方式,以現在的紅寶石前後一小時顯示。 感謝您的收看和幫助。如何從現在開始或在現在一小時之前在紅寶石中顯示
Ruby中沒有這樣的方法。您必須這樣做:
Time.now + 1*60*60 # 1.hours.from_now -> 1 hour, 60 minutes, 60 seconds
Time.now - 1*60*60 # 1.hours.before_now -> 1 hour, 60 minutes, 60 seconds
或者您可以在項目中包含activesupport
。
你能告訴我爲什麼1乘以60和60.爲什麼60應該兩次不只是一次。 –
@WawanSumardi:正如我在代碼的評論中所述。 1小時你有'1',然後在一小時內你有'60'分鐘,一分鐘有'60'秒。因此,'1 * 60 * 60',同樣2小時你有:'2 * 60 * 60' – Surya
非常感謝... –
你也可以用這種方式寫:
當前時間:
X = Time.now => 2017-02-14 11:55:17 +0530
一小時前(前一小時):
y = x - 1.hour => 2017-02-14 10:55:17 +0530
或
Y = 1.hour.ago=> 2017-02-14 10:55:17 +0530
`#在導軌V4.2(後一小時)
一小時後/因爲可用的:
Z = X + 1 ·小時=> 2017-02-14 12:55:17 +0530
或
Z = 1.hour.since=> 2017-02-14 12:55:17 +0530
# available in rails v4.2
注:此計算的X(存儲時間)不能實時(Time.now),但在以前的情況下,並由於計算上實時進行執行(Time.now)
沒有Rails標籤.... –
這些方法可用於rails v4.2及更高版本 –
對於讀者的利益誰是Ruby的新手,請在需要時顯示'require'(這裏是'require'time'')。 –