Failure/Error: it { should respond_to(:password) } expected #<User id: nil, name: "Example User", e

Failure/Error: it { should respond_to(:password) }

 expected #<User id: nil, name: "Example User", email: "user@example.com", created_at: nil, updated_at: nil, password_digest: nil> to respond to :password



Failure/Error: it { should respond_to(:password_confirmation) }

 expected #<User id: nil, name: "Example User", email: "user@example.com", created_at: nil, updated_at: nil, password_digest: nil> to respond to :password_confirmation


在学习railstutorial的时候跟着书中步骤出现了这个错误,后来发现是user中没有定义成员变量password和password_confirmation,书中给出的是

 attr_accessible :name, :email, :password, :password_confirmation

但是这样并不可以定义,需要添加

attr_accessor :password, :password_confirmation


但是当看到后面的时候,当在user类定义中加入has_secure_password以后,却需要将添加的attr_accessor :password, :password_confirmation去掉,

以为在https://github.com/rails/rails/blob/master/activemodel/lib/active_model/secure_password.rb?version=3.2#这段has_secure_password的源代码中已经做了相关处理,具体的看代码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值