2014-02-05 81 views
0

我正在嘗試安裝bcrypt來處理密碼。無法激活bcrypt-ruby(〜> 3.0.0),已激活bcrypt-ruby-3.1.2?

我跑gem install bcrypt-ruby,並得到:

....Successfully installed bcrypt-ruby-3.1.2 

我加入gem "bcrypt-ruby", "~> 3.1.2"bundle install,並重新啓動其運行程序的服務器,但我得到了錯誤:

get Gem::LoadError in UsersController#new 
can't activate bcrypt-ruby (~> 3.0.0), already activated bcrypt-ruby-3.1.2. Make sure all dependencies are added to Gemfile. 


format: { with: VALID_EMAIL_REGEX }, 
uniqueness: { case_sensitive: false } 
**has_secure_password** <---Error 
validates :password, length: { minimum: 6 } 
end 
+0

是否可以將'〜> 3.0.0'改爲'〜> 3.0' –

+0

無法更改 – Neil

+0

您需要在** Gemfile.lock **中看到哪些gem需要3.1.2版本的bcrypt-ruby ,並嘗試降級它。 –

回答

0

~> 3.0.0版本與~> 3.1.2之一衝突,因爲比較發生在3.0.~3.1.~之間,並且失敗。您需要將~> 3.0.0更改爲~> 3.0,以便將3.~3.1進行比較。

如果無法做到這一點,你必須看到,進入Gemfile.lock的,其中寶石需要3.1.2版本的bcrypt-ruby,並嘗試downdrade它。

+0

好吧,現在工作謝謝 – Neil

1

你可以改變的Gemfile線...

gem 'bcrypt-ruby', '~> 3.0.0' 

然後髮髻dle,那應該修復它!

0

嘗試

bundle update 

我也建議乾脆把gem "bcrypt-ruby", "3.1.2"在Gemfile中。

相關問題