Rails NameError: 初期化されていない定数
概要
libフォルダーにFeatureFlagAdapterクラスがあります。コードのいくつかの場所では、FeatureFlagAdapter.new(opts) として参照できます。ただし、他の場所では、NameError: uninitialized constant ContactsController::FeatureFlagAdapter のようなエラーで失敗します。参照を ::FeatureFlagAdapter.new(opts) に変更できることはわかっていますが、同じファイル内にルート名前空間演算子が接頭辞として付いていない他のクラス/モジュールへの参照が存在します。それで、なぜこれが起こるのか、何か別のアプローチがあるのかを考えています。
解決策
Rails のどのバージョンでも、デフォルトでは lib ディレクトリは積極的または自動ロードされません。これは非常に意図的なものです。
次のいずれかを行うことができます。
見る: