Deal with error: Expected foo_trait.rb to define FooTrait
Lately, I came across a nasty error. I had a class
Article that included
BarTrait. In BarTrait, I then accidentally called a non-existent method:
has_defaults :dummy => Dummy.non_existent_method
From that moment, no page would load anymore but always display an exception:
Expected foo_trait.rb to define FooTrait. That trait had nothing to do with BarTrait.
Since it doesn't tell you what's wrong, you either remember where you were working last or you need to check allfor mistakes.
This behavior is likely to be caused by Rails' autoloading.