time_ago_in_words => “in {{count}} days.”?

前端 未结 4 1015
青春惊慌失措
青春惊慌失措 2021-02-20 12:13

I\'m having a very weird bug. In my code I have <%= time_ago_in_words(game.created_at) %>

It\'s works locally and on my staging server but NOT on my p

相关标签:
4条回答
  • 2021-02-20 12:32

    I had the same problem after recently adding the i18n gem. I'm on a project where upgrading Rails isn't currently a viable option. After reading through this post and nearly ripping out time_ago_in_words, I found several similar posts.

    Copying http://gist.github.com/rails/rails/blob/master/actionpack/lib/action_view/locale/en.yml into my config/locales/en.yml as suggested here: time_ago_in_words issue worked great. Just be aware that yml is very finicky about white space.

    0 讨论(0)
  • 2021-02-20 12:52

    It sounds to me like you don't have the same version of Ruby in Production as you do in Development. Personally I still have Ruby 1.8.7 in my Development and in the Console, I constantly get the following message when I use time_ago_in_words:

    The {{key}} interpolation syntax in I18n messages is deprecated. Please use %{key} instead.

    Now this message about deprecated does not come from Rails, it comes from Ruby. And since time_ago_in_words is a Rails helper, it seems like this feature in Rails is not compatible with the later versions of Ruby where this has been removed.

    So unless you manually want to monkey patch the actual helper in some way (I wouldn't recommend it) you can either upgrade Rails or downgrade Ruby so that they are compatible.

    0 讨论(0)
  • 2021-02-20 12:53

    This is happening to me to.

    I tried inserting the "datetime:" section from

    https://github.com/svenfuchs/rails-i18n/blob/master/rails/locale/en-US.yml

    into my own en.yml, hoping to override any weird stuff. But then my app does not start and it complains about a syntax error exactly on the spot of insertion "datetime:". (when I look I can not locate that unexisting syntax error with my single eye).

    0 讨论(0)
  • 2021-02-20 12:56

    Rails was using some deprecated syntax in the helper which then got dropped in the latest Ruby version. If you are using something like Heroku, try telling your production instance to use Rails 2.3.9. Otherwise you can also try downgrading Ruby.

    See the changelog: http://weblog.rubyonrails.org/2010/9/4/ruby-on-rails-2-3-9-released

    Changes i18n named-interpolation syntax from the deprecated Hello {{name}} to the 1.9-native Hello %{name}.

    This looks like it will fix your problem.

    0 讨论(0)
提交回复
热议问题