Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails日期\格式初始值设定项导致错误_Ruby On Rails_Ruby On Rails 3_Initializer - Fatal编程技术网

Ruby on rails Rails日期\格式初始值设定项导致错误

Ruby on rails Rails日期\格式初始值设定项导致错误,ruby-on-rails,ruby-on-rails-3,initializer,Ruby On Rails,Ruby On Rails 3,Initializer,我正在尝试使用一种被广泛报道为在这里工作的技术。我想添加一个站点范围的自定义日期格式,为此,我在config/initializers/date\u formats.rb中添加了以下行: ActiveSupport::CoreExtensions::Time::Conversions::DATE_FORMATS.merge!( :verbose => lambda { |time| time.strftime( "%a, %b #{time

我正在尝试使用一种被广泛报道为在这里工作的技术。我想添加一个站点范围的自定义日期格式,为此,我在
config/initializers/date\u formats.rb
中添加了以下行:

ActiveSupport::CoreExtensions::Time::Conversions::DATE_FORMATS.merge!(
  :verbose => lambda { |time| time.strftime(
                       "%a, %b #{time.day.ordinalize}, %Y %I:%M %p") 
                     }
)
请注意,这是该文件的全部内容。但在初始化时,我遇到以下错误:

/whatever/config/initializers/date_formats.rb:4:in `<top (required)>': uninitialized constant ActiveSupport::CoreExtensions (NameError)
/whatever/config/initializers/date\u formats.rb:4:in`':未初始化常量ActiveSupport::CoreExtensions(NameError)

我遗漏了什么细节?

在Rails 3中,您可以使用

Time::DATE_FORMATS.merge!(...)
而不是Rails 2格式的:

ActiveSupport::CoreExtensions::Time::Conversions::DATE_FORMATS.merge!(...)

在Rails 3中,您可以使用

Time::DATE_FORMATS.merge!(...)
而不是Rails 2格式的:

ActiveSupport::CoreExtensions::Time::Conversions::DATE_FORMATS.merge!(...)

你能指出这项技术成功使用的链接吗?你能指出这项技术成功使用的链接吗?谢谢!这很有帮助。作为后续:如果我的约会为零,则执行类似于my_date.to_formatted_s(:verbose)的操作。所以我就去约会了。零?“”:mydate.to_格式化(:详细)。这似乎不对,不是吗?首先,你可以用
.to\s(:verbose)
而不是
to\u-s
。至于
nil
dates/times,NilClass在nil上没有
to\u格式的
。您可以向类添加一个方法,如:
def to_s(format);""; end
允许
nil.to_s(:verbose)
返回
。您也可以执行
mydate。尝试(:to_s,:verbose)| |“
很好。。我喜欢“要么尝试,要么死亡”的方法:)谢谢!这很有帮助。作为后续:如果我的约会为零,则执行类似于my_date.to_formatted_s(:verbose)的操作。所以我就去约会了。零?“”:mydate.to_格式化(:详细)。这似乎不对,不是吗?首先,你可以用
.to\s(:verbose)
而不是
to\u-s
。至于
nil
dates/times,NilClass在nil上没有
to\u格式的
。您可以向类添加一个方法,如:
def to_s(format);""; end
允许
nil.to_s(:verbose)
返回
。您也可以执行
mydate。尝试(:to_s,:verbose)| |“
很好。。我喜欢“要么尝试,要么死亡”的方法:)