Rails + Devise运行到orm_adapter-0.5.0 / lib / orm_adapter / to_adapter.rb:5:警告:toplevel由User :: OrmAdapter引用的常量OrmAdapter

时间:2018-01-17 14:38:51

标签: ruby-on-rails devise

运行我的Rails(5.2.0.beta1)应用程序并使用Devise时,我无法以用户身份登录或确认注册。我得到的错误是

Started POST "/users/sign_in" for ::1 at 2018-01-17 15:19:45 +0100
Processing by Devise::SessionsController#create as HTML Parameters {"utf8"=>"✓", "authenticity_token"=>"some-token-pV6YfBfiXs6DxxJKoBoVLU4GNJtXUY3oAQ==", "user"=>{"email"=>"my@email.com", "password"=>"[FILTERED]", "remember_me"=>"1"}, "commit"=>"Einloggen"}
/Users/me/.gem/gems/orm_adapter-0.5.0/lib/orm_adapter/to_adapter.rb:5: warning: toplevel constant OrmAdapter referenced by User::OrmAdapter
Completed 500 Internal Server Error in 2ms (ActiveRecord: 0.0ms)

NoMethodError (undefined method `new' for OrmAdapter:Module):

orm_adapter (0.5.0) lib/orm_adapter/to_adapter.rb:5:in `to_adapter'
devise (4.3.0) lib/devise/models/authenticatable.rb:267:in `find_first_by_auth_conditions'
devise (4.3.0) lib/devise/models/authenticatable.rb:263:in `find_for_authentication'
devise (4.3.0) lib/devise/models/database_authenticatable.rb:196:in `find_for_database_authentication'
devise (4.3.0) lib/devise/strategies/database_authenticatable.rb:8:in `authenticate!'

配置相当标准。调用to_adapter是在宝石中,我实际上并没有自己做任何事情。 orm_adapter gem很老,但看起来很稳定。 我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

无论是什么破坏了orm_adapter宝石。我卸载了它

gem uninstall orm_adapter

然后重新安装它,这解决了问题

gem install orm_adapter