NoMethodError at / undefined method` - @'for#<datetime:0x00000001f18168> </datetime:0x00000001f18168>

时间:2012-01-03 07:14:30

标签: ruby datetime activesupport

我正在尝试使用独立的ActiveSupport time.ago,因此需要:

ruby
require 'active_support/core_ext/date_time/calculations'

如果我按照建议尝试使用它:

ruby
time = Chronic.parse(time_string)
time.ago

我收到此错误:

ArgumentError - wrong number of arguments (0 for 1):
    /home/user/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.0.0/lib/active_support/core_ext/date_time/calculations.rb:61:in `ago'

如果我提供参数,那么:

ruby
time.ago DateTime.now

我得到了这个,我根本不明白:

NoMethodError - undefined method `-@' for #<DateTime:0x00000001f18168>:
    /home/passcod/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.0.0/lib/active_support/core_ext/date_time/calculations.rb:62:in `ago'

1 个答案:

答案 0 :(得分:2)

ago方法旨在让您能够在当前时间添加若干秒(或其他时间单位),例如10.minutes.ago

我不支持提供完整日期,据我所知 - 2012年1月23日下午2点将会是什么意思?