观看Lynda关于rails的教程后,我试图启动我的第一个应用程序。首先,我创建了数据库。开发和测试之一。之后我创建了我的第一个模型。使用Usuario这个名字。使用其迁移文件,我创建了表Usuarios。在里面,我有:id,nome,login,senha,ativo,created_at和updated_at。由于这是我的管理员用户表,我想开始在控制台上进行一些测试。所以我设置了nome值:
usuario = Usuario.new
usuario = "Alex"
之后我试图保存:
usuario.save
现在,我不断收到消息: NoMethodError:未定义方法`password_digest'
这是我的模型Usuario代码:
class Usuario < ApplicationRecord
validates_presence_of :nome
validates_length_of :nome, :within => 5..255
validates_presence_of :login
validates_length_of :login, :within => 5..50
validates_uniqueness_of :login
validates_presence_of :senha
validates_length_of :senha, :within => 5..20
validates_presence_of :ativo
end
我也删除了这行Gemfile的评论:
gem 'bcrypt', '~> 3.1.7'
但我还没在我班上使用 has_secure_password 指令。那么,为什么我在控制台上收到此错误消息?我甚至试图从我的模型中删除thoses验证但我仍然收到该错误消息。为什么?我错过了一些重要的步骤吗?