我想在我的 rails 应用程序中使用 Date::ABBR_MONTHS 常量。我在http://www.ruby-doc.org/stdlib/看到了 Ruby stdlib 文档,它似乎没有这个常数。然而,这个常数在http://stdlib.rubyonrails.org/
这两个库有什么区别?
这个常量在我的 unix 部署机器上运行,但在我的 windows 开发机器上运行。任何人都可以解释发生了什么吗?
我想在我的 rails 应用程序中使用 Date::ABBR_MONTHS 常量。我在http://www.ruby-doc.org/stdlib/看到了 Ruby stdlib 文档,它似乎没有这个常数。然而,这个常数在http://stdlib.rubyonrails.org/
这两个库有什么区别?
这个常量在我的 unix 部署机器上运行,但在我的 windows 开发机器上运行。任何人都可以解释发生了什么吗?
ABBR_MONTHS
是 ActiveSupport 给你的东西,它只是添加到 Date 类中。第一个库用于 ruby,第二个库用于 ruby on rails。由于 Rails 版本不同,该常量可能无法正常工作。
ABBR_MONTHS 由 ActiveSupport 添加到日期。
Rails 实际上是一组宝石。ActiveSupport 的作用主要是为 Ruby 语言和其他不可知的工具(如 Inflector 和创建 Time 实例的 2.days 方式等)添加细节。
因此,如果您出于某种原因在您的 rails 应用程序之外需要这种功能,那么您很幸运:
require 'rubygems' #If not already done
require 'activesupport'
puts Date::Format::ABBR_MONTHS.inspect
#=> {"oct"=>10, "jul"=>7, "jan"=>1, "dec"=>12, "jun"=>6, "apr"=>4, "feb"=>2, "may"=>5, "sep"=>9, "aug"=>8, "mar"=>3, "nov"=>11}