問題後我跟着這個railscast並建立了一個簡單的認證架構,適用於發展一流的:http://railscasts.com/episodes/250-authentication-from-scratchbcrypt紅寶石寶石:部署到Heroku的
現在,部署到Heroku的後創建一個新用戶時,我得到一個錯誤。
登錄:
2013-07-22T20:03:07.688326+00:00 app[web.1]: NoMethodError (undefined method `password_salt=' for #<User:0x00000005ca3050>):
2013-07-22T20:03:07.792383+00:00 app[web.1]: app/models/user.rb:16:in `encrypt_password'
2013-07-22T20:03:07.898375+00:00 app[web.1]: app/controllers/users_controller.rb:24:in `create'
這種方法是,在我的用戶模型:
def encrypt_password
if password.present?
self.password_salt = BCrypt::Engine.generate_salt
self.password_hash = BCrypt::Engine.hash_secret(password, password_salt)
end
end
的Gemfile:
gem 'bcrypt-ruby', :require => "bcrypt"
束在Heroku上成功安裝然,安裝了寶石
不知道這裏出了什麼問題,有什麼想法?
感謝
解決 - 安裝的寶石版本是3.0.1,強制「〜> 3.1.1」,現在就可以使用! – DonMB