Search code examples
ruby-on-railsrubyruby-on-rails-4rubygemsmailboxer

Model from Gem is missing


I am using mailboxer in my Rails 4 app.

gem 'mailboxer'

I recently updated it from 0.11 to 0.12.4, it stopped working, and I cant figure out why. Now, I am getting the error:

uninitialized constant Message

I checked the gem's GitHub repo and it does have the Message model.

I checked my local version of the gem and it matches up.

Puma:mailboxer Jeff$ pwd
/Users/Jeff/.rvm/gems/ruby-2.0.0-p247/gems/mailboxer-0.12.4/app/models/mailboxer
Puma:mailboxer Jeff$ ls
conversation  conversation.rb mailbox.rb  message.rb  notification.rb receipt.rb

Why isn't my app finding the model? How do I fix this?


Solution

  • Message is now namespaced as Mailboxer::Message. According to the upgrade documentation, you also need to run through a few steps when upgrading from 0.11 to 0.12:

    rails generate mailboxer:namespacing_compatibility
    rails generate mailboxer:install -s
    rake db:migrate