...

【Rails】You don’t have bcrypt installed というエラーの対処法

You don't have bcrypt

 

「You don’t have bcrypt installed」というエラー

ターミナルから「rails c」でUserテーブルのレコードを確認しようとしたら以下のようなエラーが出ました。

irb(main):001:0> User.all
You don't have bcrypt installed in your application. Please add it to your Gemfile and run bundle install
Traceback (most recent call last):
        3: from (irb):1
        2: from app/models/user.rb:1:in `<main>'
        1: from app/models/user.rb:2:in `<class:User>'
LoadError (cannot load such file -- bcrypt)

 

You don’t have bcrypt installed in your application」…?

ナニソレオイシイノ??オイシソウ。

エラーは滅びろ(n回目)

そのエラーが出たUserモデルではパスワードを使うために、bcryptのhas_secure_passwordメソッドを記述していました…

まあ要するに「bcryptがインストールされてないのでgemファイルに記述してね遊戯ボーイ」とのことですが

# Use ActiveModel has_secure_password
gem 'bcrypt', '~> 3.1.7'

ちゃんと書いてあるしbundle installもしてあるんだよなぁ(困惑)…

バージョンとかが原因…?うーん分からない…

と色々試行錯誤してみた結果、何とか解決できたのでその対処法を以下にまとめます。

Railsの「You don’t have bcrypt installed」の解決法

解決法
step1
gemファイルで「bcrypt」のとこをコメントアウトする
step2
bundle installする
step3
コメントアウトを外す
step4
再びbundle installする
step5
ターミナルを再起動する

解決はしましたが、正直原因は謎…

ブログ主

知らない方がいいこともあるんだよ(イケボ)
調べてた結果、同じようなエラーが出た際に同じような対処法を取っている方の記事がありました。

参考 You don't have bcrypt installed in your application. と言われたQiita

まとめ

以上、Railsの「You don’t have bcrypt installed」というエラーの対処法でした。

Gemfile.lockあたりが絡んできているのかなと考えたりしてますが…
で深く考えすぎないことも大事かなということでここら辺で撤退します。

参考になれば幸いです!では⸝⸝- ̫ -⸝⸝

参考になったらシェアしよう

コメントを残す

メールアドレスが公開されることはありません。