Frage

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.

War es hilfreich?

Lösung

The problem was that I was using FactoryGirl, and inside my Offer factory 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.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top