私はi18n gemの 0.6.0と ActiveSupport gem の 2.3.14 を使用する Rails 2.3.14 プロジェクトに取り組んでいます。これらは両方ともHash#slice
メソッド ( i18n's ; ActiveSupport's ) を定義しますが、機能が異なります: i18n バージョンは を使用するHash#fetch
ため、i18n/core_ext/hash.rb:4:in 'fetch': key not found (IndexError)
要求されたキーが欠落している場合は例外が発生しますが、ActiveSupport バージョンは不足しているキーを喜んで無視し、残りの ActiveSupport はに依存します。その幸せな無視。
私のアプリでは、i18n バージョンが最初にロードされます (ちなみに、faker が依存関係としてロードしているため)。そのため、ActiveSupport が ignore-missing-keys 動作に依存しようとすると、例外が発生します。
フェイカーと i18n の前に ActiveSupport をロードするよう Rails に指示する方法はありますか?