所以要在我运行的用户模型中获取记录
@user = User.find(1)
然后更改属性:
@user.active = false
然后返回false
当我跑步时
@user.save
我得到了
(0.2ms) BEGIN
(0.3ms) SELECT 1 FROM `users` WHERE (LOWER(`users`.`username`) = LOWER('sean') AND `users`.`id` != 1) LIMIT 1
(0.3ms) SELECT 1 FROM `users` WHERE (LOWER(`users`.`email`) = LOWER('sean@gmail.com') AND `users`.`id` != 1) LIMIT 1
(0.6ms) ROLLBACK
=> false
答案 0 :(得分:12)
尝试此操作以查看是否抛出错误
@user.save!
如果您的@user.save
返回false,则表示存在错误,并且有些内容阻止其保存。您可以在此时使用@user.errors
来查看错误。
答案 1 :(得分:3)
有同样的问题。这样设法解决了它:
@user.save(validate: false)
以下是原始答案的链接: How to skip validations as admin during update_attributes?