的Rails无法加载这样的文件 - bcrypt
问题描述:
我的应用程序加载在本地,但任何交互抛出一个错误:的Rails无法加载这样的文件 - bcrypt
Started GET "https://stackoverflow.com/users/sign_in" for 127.0.0.1 at 2016-11-22 15:42:14 +1100
ActiveRecord::SchemaMigration Load (1.0ms) SELECT "schema_migrations".* FROM
"schema_migrations"
Processing by Users::SessionsController#new as HTML
Rendering users/sessions/new.html.erb within layouts/application
Rendered users/sessions/new.html.erb within layouts/application (37.0ms)
Rendered layouts/_navbar.html.erb (1.0ms)
Completed 200 OK in 1007ms (Views: 978.5ms | ActiveRecord: 4.0ms)
Started POST "https://stackoverflow.com/users/sign_in" for 127.0.0.1 at 2016-11-22 15:42:29 +1100
Completed 401 Unauthorized in 8ms (ActiveRecord: 1.0ms)
Processing by Users::SessionsController#new as HTML
Parameters: {"utf8"=>"V",
Completed 500 Internal Server Error in 4ms (ActiveRecord: 0.0ms)
LoadError (cannot load such file -- bcrypt):
app/controllers/users/sessions_controller.rb:6:in `new'
Rendering C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/actionpack-5.0.0.1/lib/action
我运行Windows7的64位,Ruby23-64,Rails的5.0.0.1和唯一的bcrypt宝石我有安装的是:bcrypt-3.1.11。
我在这里尝试了解决方案:cannot load such file -- 1.9/bcrypt_ext (LoadError)但是对于较新版本的ruby,bcrypt-ruby不再存在。
编辑:如果我运行gem install bcrypt,我会得到一个额外的bcrypt gem:C:\ Ruby23-x64 \ lib \ ruby \ gems \ 2.3.0 \ gems。我现在有2个bcrypts:
- C:\ Ruby23-64 \ LIB \红宝石\宝石\ 2.3.0 \宝石\ bcrypt-3.1.11
- C:\ Ruby23-64 \ LIB \红宝石\ gems \ 2.3.0 \ gems \ bcrypt-3.1.11-x64-mingw32
我该保留哪一个,以及我需要在Gemfile中更改哪些内容?
我缺少什么?
答
您将此gem 'bcrypt'
放入您的Gemfile
。
如果你把它和跑bundle install
,你restart
你的rails server
?
如果你仍然有这个问题,你可以这样做如下:
gem uninstall bcrypt
和gem uninstall bcrypt-ruby
安装:
首先运行这两个命令卸载
bcrypt
和bcrypt-ruby
再与gem install bcrypt --platform=ruby
在你
Gemfile
写gem 'bcrypt-ruby', '3.1.5', :require => 'bcrypt'
然后运行
bundle install
和restart
您rail server
是'bcrypt'宝石正确安装? –
尝试添加gem文件,如'gem'bcrypt-ruby','3.1.1.rc1',:require =>'bcrypt'' – Sravan
尝试下一个版本的'bcrypt','3.1.2' – Sravan