Mongoid 3.0.1 / Rails 3.2.6を更新した後、created_atを表示するときに「getlocal」メソッドエラーが発生し始めます。
Showing /home/lsoave/rails/github/gitwatcher/app/views/shared/_watch-list-table.html.haml where line #28 raised:
undefined method `getlocal' for "2008-02-14T02:20:50Z":String
Extracted source (around line #28):
28: %td= repo.created_at.to_s(:pretty)
アップデート
そのフォーマットを設定するconfig/initializers/time_formats.rbがあります
$ cat config/initializers/time_formats.rb
Time::DATE_FORMATS[:month_and_year] = "%B %Y"
Time::DATE_FORMATS[:pretty] = lambda { |time| time.strftime("%a, %b %e at %l:%M") + time.strftime("%p").downcase }
とにかく、エラーは単に呼び出すだけでも発生しますrepo.created_at
(.to_s(:pretty)を省略)
アップデート
RVM / Ruby-Rails-Mongoidスタックでロールバックを試しましたが、成功しませんでした:
from ruby-1.9.3-p194@rails-3.2.6 to ruby-1.9.2-p290@rails-3.2.3
from Mongoid 3.0.1 to Mongoid 2.4.3
from Rails 3.2.6 to Rails 3.2.3
RVM出力を参照してください:
lsoave@ubuntu:~/rails/tests/gitwatcher$ ruby -v
ruby 1.9.2p290 (2011-07-09 revision 32553) [i686-linux]
lsoave@ubuntu:~/rails/tests/gitwatcher$ rvm list
rvm rubies
=> ruby-1.9.2-p290 [ i686 ]
* ruby-1.9.3-p194 [ i686 ]
# => - current
# =* - current && default
# * - default
lsoave@ubuntu:~/rails/tests/gitwatcher$ rvm gemset list
gemsets for ruby-1.9.2-p290 (found in /home/lsoave/.rvm/gems/ruby-1.9.2-p290)
global
=> rails-3.2.3
lsoave@ubuntu:~/rails/tests/gitwatcher$
...私はこの時点でENVレベルのものであるとゲストしますが、何ですか?