【发布时间】:2015-06-25 18:44:34
【问题描述】:
我熟悉 Dirty Objects 并在 presave 回调中使用 attribute_changed?。当属性 Y 更改时,我想将一个属性更改回默认值。所以在伪代码中:
def pre_save
self.crawl_mode = false if self.url_changed?
end
但是,更改 url 并尝试保存失败。它仍然通过了所有验证,所以我不知道从哪里开始。
【问题讨论】:
-
您是在
before_validation或before_save上这样做吗? -
这是
before_save
标签: ruby-on-rails activerecord callback