爲什麼我不能使用Ruby獲取明天的日期?下面是一些經常工作失敗的東西:爲什麼我不能使用Ruby獲取明天的日期?
Time.now.tomorrow
Date.tomorrow
Date.current.tomorrow
Date.current+1
我找不出什麼問題。我在Windows上使用Ruby 1.8.7,這可能是問題所在。
任何幫助表示讚賞。
爲什麼我不能使用Ruby獲取明天的日期?下面是一些經常工作失敗的東西:爲什麼我不能使用Ruby獲取明天的日期?
Time.now.tomorrow
Date.tomorrow
Date.current.tomorrow
Date.current+1
我找不出什麼問題。我在Windows上使用Ruby 1.8.7,這可能是問題所在。
任何幫助表示讚賞。
只需使用the succ
method within 'date'
:
require 'date'
d = Date.new(2013,8,5)
d = d.succ
在REPL,d.to_s
產生的"2013-08-06"
輸出。
我想出了一些阻止我的東西。我忘記了在irb中輸入'require rubygems'。我的完整解決方案現在是'require date'' 'd = Date.new(Time.now.year,Time.now.month,Time.now。天)' 'd = d.succ.to_s' ...從來沒有得到主動支持去做我想做的事。不知道爲什麼。 –
這些都是rails(特定的Active Support)添加的東西。如果你正在編寫一個非Rails項目,那麼你將無法使用它們,而不需要適當的Active Support支持。
例如:
require 'active_support/core_ext/date'
require 'active_support/core_ext/time'
應該在大多數的加入Date
和Time
功能帶來的。
請參閱Active Support的「Extensions to Time」。
整個頁面都是關於如何挑選您需要的擴展,而不是整個Active Support庫。
你的目的,你可能需要:
require 'active_support/core_ext/time/calculations'
如果不掌握核心擴展,那麼你應該升級你的Rails,但可以打破任何舊的Rails應用,你可能有。如果你使用的是Ruby 1.8.7,那麼賠率是很好的,你已經過時了。此時,您應該瞭解如何使用RVM或rbenv來管理沙盒中的Ruby安裝,或者與其Windows相同。
顯示的錯誤是什麼? –
他們是如何失敗?有錯誤嗎?日期錯了嗎? – thegrinner
你還沒有給我們任何工作。您的Ruby生態系統最近發生了什麼變化要失去'.tomorrow',你不會加載Rails或Active Support日期庫。 –