为什么我不能使用 Ruby 获取明天的日期?以下是一些正常工作但失败的事情:
Time.now.tomorrow
Date.tomorrow
Date.current.tomorrow
Date.current+1
我不知道出了什么问题。我在 Windows 上使用 Ruby 1.8.7,这可能是问题所在。
任何帮助表示赞赏。
为什么我不能使用 Ruby 获取明天的日期?以下是一些正常工作但失败的事情:
Time.now.tomorrow
Date.tomorrow
Date.current.tomorrow
Date.current+1
我不知道出了什么问题。我在 Windows 上使用 Ruby 1.8.7,这可能是问题所在。
任何帮助表示赞赏。
这些都是 rails(特别是 Active Support)添加的东西。如果您正在编写一个非 Rails 项目,那么您将无法在没有适当的 Active Support 的情况下使用它们。
例如:
require 'active_support/core_ext/date'
require 'active_support/core_ext/time'
Date
应该引入添加到和的大部分功能Time
。
请参阅 Active Support 的“时间延长”。
整个页面都是关于如何只挑选您需要的扩展,而不是整个 Active Support 库。
出于您的目的,您可能需要:
require 'active_support/core_ext/time/calculations'
如果您没有核心扩展,那么您应该升级您的 Rails,但这可能会破坏您可能拥有的任何旧 Rails 应用程序。如果您在 Ruby 1.8.7 上运行,那么很有可能您已经过时了。而且,此时,您应该阅读有关如何使用 RVM 或 rbenv 来管理沙盒中的 Ruby 安装,或它们的 Windows 等效项。