我的模型中有一个password_reset_token字段,它只存储一个身份验证令牌,用于解析重置密码url。
除非调用我的控制器中的forgot_password方法,否则它将为nil。在这里生成令牌。
我希望验证仅在此处运行,否则每次更新用户对象时,验证都会抱怨空令牌字段。 我该怎么做?
答案 0 :(得分:2)
您可以通过这样做跳过验证:
@my_object.save(false)
当然,明智地使用它。跳过验证最终会导致数据库中插入损坏的数据......
答案 1 :(得分:2)
为什么要验证它?当用户进入忘记密码表单时,他只需要提交我想要的电子邮件地址,轮到您生成身份验证令牌,所以基本上没有必要验证它,因为它不会是输入。