I am trying to create an observer for my Offer model but I keep getting this error:
/Users/codus/.rvm/gems/ruby-1.9.3-p194@gyp/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:503:in `load_missing_constant': Expected /Users/codus/Projetos/gyp-revolution/app/models/offer.rb to define Offer (LoadError)
There is nothing special about my model and I am sure it is declared in the right place (the application works fine without the observer).
I’ve generated my observer with the Rails script
rails g observer offer
And I added this in my config/application.rb file
config.active_record.observers = :offer_observer
The strangest part is that it works fine with all my other models.
I am using Rails 3.2.6 with Ruby 1.9.3p194.
The problem was that I was using FactoryGirl, and inside my
Offerfactory I called a constant defined in my model. The factory was being loaded before the model, so this error was happening.It’s weird that the observer changed this, it works fine without it. Now I just use the value in my factory, not the constant.