1

非常に小さな devise アプリケーションを ruby​​ 2 と rails 4 にアップグレードしようとしています。rails サーバーを起動しようとしたり、db コマンドを入力しようとすると、bcrypt-ruby (devise の依存関係) が見つからないというエラーが表示されます。

「bcrypt-ruby 3.1.1」をgemfileに追加してバンドルを実行しているため、自動インストールされた依存関係(3.0.1)ではなく、gemfile(3.1.1)にある新しいバージョンのbcrypt-rubyを強制的に使用するにはどうすればよいですかupdate/install では問題が解決しないようです。

$ rails s
You have requested:
  bcrypt-ruby = 3.1.1

The bundle currently has bcrypt-ruby locked at 3.0.1.
Try running `bundle update bcrypt-ruby`
Run `bundle install` to install missing gems.

Gemfile:

gem 'bcrypt-ruby', '3.1.1', :require => 'bcrypt'

Gemfile.lock

devise (3.0.0)
      bcrypt-ruby (~> 3.0)
4

1 に答える 1

2

house9正しい。

リポジトリをフォークして依存関係を更新しました。Gemfile でこれを使用して試すことができます。

gem 'devise', :git => 'https://github.com/Arkham/devise.git', :branch => 'update_bcrypt'
于 2013-07-27T18:19:52.697 に答える