パーフェクトRuby on Railsの6章を写経してて、carrierwaveで画像を添付する処理を実装してたら、なぜか
uninitialized constant Event::EventImageUploaderというエラーが出て上手くいかなかったのでその対応方法を書いておきます。
ちなみに、自分の環境は以下です。
- Mac OS X 10.9.5
- Ruby
- rbenvを利用
- ruby 2.1.2p95 (2014-05-08 revision 45877) [x86_64-darwin13.0]
- rbenvを利用
- 今回関連するGem
- rails (4.1.1)
- carrierwave (0.10.0)
対応方法
13 Jul 2011 にオープンしてるcarrierwaveのissuesの最後の方のコメント、具体的には、8月7日のfredngoさんのやつで解決しました。
config/application.rbに、autoload_pathsの記述を以下のようにする。
module AwesomeEvents
class Application < Rails::Application
config.autoload_paths += Dir[Rails.root.join('app', 'uploaders')]
# 以下省略
end
end
修正が完了したら、起動中のWebrick(もしくは利用されてるアプリケーション・サーバー)を再起動します。
これで私の環境では無事にcarrierwaveが利用できるようになりました。