Search code examples
ruby-on-rails-3herokusorcery

Authentication Error with Sorcery - No Such Method create


I have a challenge with my Rails 3.0.9 application, had been working "well" until some days back when i made a commit of some static content. It's on heroku and i use the Socery Gem for Authentication When i tried to access it i got an Application Crash Error from Heroku, Looking at my Logs i see this

 Starting process with command `thin -p 38037 -e production 
-R /home/heroku_rack/heroku.ru  start`
2012-04-19T16:17:26+00:00 app[web.1]: 
/app/.bundle/gems/ruby/1.9.1/gems/activesupport-   
3.0.9/lib/active_support/dependencies.rb:304:in `rescue in depend_on':
No such file to load -- bcrypt (LoadError)

After Doing some research, added

 gem 'bcrypt-ruby'

to my Gem file, now my Application starts up on Heroku but failson User Authentication with this in the Log

←[32m2012-04-23T09:15:48+00:00 app[web.1]:←[0m
 ←[32m2012-04-23T09:15:48+00:00 app[web.1]:←[0m
←[32m2012-04-23T09:15:48+00:00 app[web.1]:←[0m Started POST "/sessions" for 94.2
00.71.131 at 2012-04-23 02:15:48 -0700
←[32m2012-04-23T09:15:48+00:00 app[web.1]:←[0m
←[32m2012-04-23T09:15:48+00:00 app[web.1]:←[0m NoMethodError (undefined method `
unlock_token' for #<User:0x000000052f7740>):    
←[32m2012-04-23T09:15:48+00:00 app[web.1]:←[0m   app/controllers/sessions_contro
ller.rb:24:in `create'

Solution

  • I ran into this when I updated my gems as well. Sorcery 0.7.11 has this problem. Reverted to 0.7.7 which works fine.