Ruby on rails bcrypt LoadError:无法加载此类文件

Ruby on rails bcrypt LoadError:无法加载此类文件,ruby-on-rails,ruby,ruby-on-rails-4,load,bcrypt,Ruby On Rails,Ruby,Ruby On Rails 4,Load,Bcrypt,我正在尝试为我的Rails应用程序设置登录功能,当我按下登录按钮时,会收到一条bcrypt错误消息: LoadError in SessionsController#create cannot load such file -- bcrypt 还有其他人收到这个错误吗?我有最新版本的bcrypt,我完全按照教程的要求去做 用户模型:我把星号放在错误所在的行的周围 class User < ActiveRecord::Base ****has_secure_password**** e

我正在尝试为我的Rails应用程序设置登录功能,当我按下登录按钮时,会收到一条bcrypt错误消息:

LoadError in SessionsController#create
cannot load such file -- bcrypt
还有其他人收到这个错误吗?我有最新版本的bcrypt,我完全按照教程的要求去做

用户模型:我把星号放在错误所在的行的周围

class User < ActiveRecord::Base
  ****has_secure_password****
end
档案:

gem 'bcrypt', '~> 3.1.7'
会话/新视图:

<div id= "admin-sign-in">
  <%= form_for(:session, url: login_path) do |f| %>

    <%= f.label :id %>
    <%= f.text_field :id %>

    <%= f.label :password %>
    <%= f.password_field :password %>

    <%= f.submit "Log in", class: "btn btn-primary" %>
  <% end %>
</div>

运行
bundle install
后要安装
bcrypt
只需重新启动rails服务器即可

这将有助于您的应用程序加载bcrypt依赖项。

确保您不仅运行bundle install,还可以杀死服务器并重新加载,以确保它随后加载到新的gems中。您还可以检查GEM文件中的“spring”。如果它也被加载了,你会想把它注释掉,重新加载服务器,然后再试一次。这应该考虑到所有的可能性。

我也有同样的问题,但在编辑Gemfile并取消对行的注释之前无法解决它

    gem 'bcrypt', '~> 3.1.7' 
我最初安装的是3.1.7版,因为根据我在这个问题的另一个解决方案中读到的内容,我担心是否与更高版本存在兼容性问题,但3.1.7版也失败了,并显示了另一条错误消息。然而,3.1.11工作得非常好,因此我在文件中增加了注释以供阅读

    gem 'bcrypt', '~> 3.1.11
然后再次运行包安装。
这起作用了。

停止spring进程并重新启动Guard为我解决了问题:

$ ps aux | grep spring
返回了四个spring进程:

ubuntu     11526  0.0  0.0 298748 24348 pts/1    Sl   22:08   0:00 spring server | mh03_sample_app | started 16 mins ago
ubuntu     11529  0.4  0.1 531764 79204 ?        Ssl  22:08   0:04 spring app    | mh03_sample_app | started 16 mins ago | test mode 
...
...
杀死(一个接一个):

然后重新启动:

$ bundle exec guard

有关详细说明,请参阅Michael Hartl的Rails教程

是否运行了
捆绑安装
?是否可以尝试将require'bcrypt'放入controller@BroiSatse是的,它是正常安装的。@Hemali在会话控制器中按字面意思写
需要'bcrypt'
。@user3739453-添加gem后重新启动服务器了吗?
$ ps aux | grep spring
ubuntu     11526  0.0  0.0 298748 24348 pts/1    Sl   22:08   0:00 spring server | mh03_sample_app | started 16 mins ago
ubuntu     11529  0.4  0.1 531764 79204 ?        Ssl  22:08   0:04 spring app    | mh03_sample_app | started 16 mins ago | test mode 
...
...
$ kill -15 11526
$ kill -15 11529
$ kill ... 
$ kill ...
$ bundle exec guard