如何让has_secure_password在生产中工作?

时间:2012-03-06 15:37:38

标签: ruby ruby-on-rails-3 security deployment

我在新应用程序中使用has_secure_password,它在本地运行良好。但是,当我部署到我们的服务器并尝试运行它时,我收到以下错误消息:

  

未定义的局部变量或方法`has_secure_password'   WorkerLogin:类

我做了一个bundle install和所有事情,所以我不确定缺少什么。我在ruby 1.9.2p290,但我认为那不是问题。

思想?

2 个答案:

答案 0 :(得分:4)

我最终意识到当我进行Capistrano部署时,我没有将最新的代码推送到GitHub。我已将include ActiveModel::SecurePassword添加到我的WorkerLogin类但未签入。此行是必需的,因为我使用的是MongoDB / MongoMapper,它不会像ActiveRecord那样自动包含ActiveModel::SecurePassword

答案 1 :(得分:2)

在Gemfile中取消注释或添加以下行:

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

并运行bundle install