我在数据库中已有数据后添加了验证。它需要存在关联,并且我的一个记录没有所述关联。当我尝试更新它时,Rails返回false
所以我知道它没有更新但是当我检查日志时我得到的是:
(0.2ms) BEGIN
Aka Load (0.2ms) SELECT "akas".* FROM "akas" WHERE "akas"."sid" = $1 [["sid", 144]]
(0.2ms) ROLLBACK
我花了一段时间才意识到发生了什么。有没有办法让验证告诉我出了什么问题?
googlers更新:请参阅Rails -- create and create! methods, RoR 3 Tutorial - 它开始解释bang方法的差异(update_attributes vs update_attributes!),我觉得它很有帮助(我正在使用RoR v4)。
答案 0 :(得分:0)
The validation message option:
...:message选项允许您指定在验证失败时将添加到错误集合的消息。如果未使用此选项,Active Record将为每个验证助手使用相应的默认错误消息。
E.g。
validates :email, uniqueness: true, message: 'not unique'