Rails3でsidekiqgemを使用していて、app / workersフォルダーにfoo_workers.rbを定義しました。このエラーが発生FooWorker.perform_async(@article)するという名前のRailsコントローラーを呼び出そうとすると、articles
uninitialized constant ArticlesController::FooWorker
誰か助けてくれませんか。
Rails3でsidekiqgemを使用していて、app / workersフォルダーにfoo_workers.rbを定義しました。このエラーが発生FooWorker.perform_async(@article)するという名前のRailsコントローラーを呼び出そうとすると、articles
uninitialized constant ArticlesController::FooWorker
誰か助けてくれませんか。
複数形を確認してください。ファイルの名前はです。これは、おそらくではなく をfoo_workers.rb定義していることを意味します。単数である必要があります。しかし、実際にはコードを投稿していないため、これはすべて推測です。FooWorkersFooWorker
autoload メカニズムは、クラス名を複数形にしません。そのため、クラスはオートロード パスの一部にFooWorkerあるファイルで定義されることが期待されます。foo_worker.rb
ファイル名が異なる場合 ( のようにfoo_workers.rb)、Rails はそこからクラスを読み込もうとしません。