0

Gemfile のこの行を置き換えると、

gem 'globalize3'

これによって:

gem 'globalize', '~> 3.0.0'

ここで提案されているように: https://github.com/globalize/globalize、ユニコーンの起動中にこのエラーが発生しました

Unicorn ログ ファイルから

I, [2013-11-19T12:07:39.869767 #20032]  INFO -- : Refreshing Gem list
/usr/local/rvm/rubies/ruby-1.9.3-p429/lib/ruby/gems/1.9.1/gems/unicorn-4.6.3/lib/unicorn.rb:48: stack level too deep (SystemStackError)

私は特別なことは何もないと思います。これ (以下) を構成して、 pt-BRenに、またはその逆にフォールバックします。これは、新しいグローバル化を使用した開発で機能します (Globalize3 では機能しません)。ただし、本番環境でこれらの行にコメントしましたが、エラーは解決しません。

config/application.rb

config.i18n.fallbacks = {'pt-BR' => 'en', 'en' => 'pt-BR'}
Globalize.fallbacks = {:en => [:en, :'pt-BR'], :'pt-BR' => [:'pt-BR', :en]}

config/environment.rb

require "i18n/backend/fallbacks"
I18n::Backend::Simple.send(:include, I18n::Backend::Fallbacks)

何かアドバイスはありますか?問題を見つけるためにできるテストをいただければ幸いです。

4

1 に答える 1

0

グローバリゼーションのバグのようです。

を使用して動作しました

gem 'globalize', '3.0.0'

これらのリンクで詳細情報を入手できます。

とはいえ、次回はどうなるかわかりません。私は同じことをすべきだと思います(SOおよび/またはGemの問題キューに投稿する)

アップデート

Globalize リリース 3.0.2 が機能しているため、このソリューションは不要になりました。

于 2013-11-22T03:28:20.197 に答える