Rails Tutorial 13章でcarrierwaveを導入した時のエラー

エラー内容

Running via Spring preloader in process 78243 Run options: --seed 24974

Running:

E

Error: MicropostTest#test_content_should_be_preset: NameError: uninitialized constant #<Class:0x00007ffc7f2e9040>::PictureUploader app/models/micropost.rb:4:in <class:Micropost>' app/models/micropost.rb:1:in

'

rails test test/models/micropost_test.rb:20

E

Error: MicropostTest#test_user_id_shoud_be_present: NameError: uninitialized constant #<Class:0x00007ffc7f2ea968>::PictureUploader app/models/micropost.rb:4:in <class:Micropost>' app/models/micropost.rb:1:in

'

rails test test/models/micropost_test.rb:15

F

Failure: MicropostTest#test_content_should_be_at_most_140_characters [/Users/eri2490/02-01-web_dev/rails_tutorial_03/sample_app/test/models/micropost_test.rb:27]: Expected true to be nil or false

rails test test/models/micropost_test.rb:25

..........F

Failure: MicropostsInterfaceTest#test_micropost_interface [/Users/eri2490/02-01-web_dev/rails_tutorial_03/sample_app/test/integration/microposts_interface_test.rb:14]: "Micropost.count" didn't change by 0. Expected: 38 Actual: 39

rails test test/integration/microposts_interface_test.rb:9

............................................

Finished in 7.343647s, 7.8980 runs/s, 39.4899 assertions/s. 58 runs, 290 assertions, 2 failures, 2 errors, 0 skips

対処方法

config/environment.rb に追記 require 'carrierwave/orm/activerecord'

試していないが、springを再起動して直す方法もあるようだ。

参考記事

Railsチュートリアル中にNameError: uninitialized constant Micropost::PictureUploaderが出た時の対処法 - Qiita

NameError: uninitialized constant Article::ImageUploader when using Carrierwave on rails 4.1.5 - Stack Overflow