【发布时间】:2016-09-02 13:47:18
【问题描述】:
很抱歉,如果已经问过类似的问题,我找不到任何相同的东西。
因此,有人能告诉我为什么before_save 尤其是有条件的可以被认为是坏的吗?
before_save :something, if: Proc.new { self.abc == 'hello' }
因此,我理解为什么验证有时更适合,但我不明白为什么有些人认为回调可能是一件不好的事情,他们强迫你只编写验证,但从不让它们有条件。
我个人认为可能存在更大的问题,因为此更改可能会影响已经存在的条目,因此如果您打算仅在某些情况下修改数据,则可以实施条件验证器或为before_save 提供if。为什么有些人觉得不好?有人可以帮我吗?
非常感谢!
【问题讨论】:
标签: ruby-on-rails database validation activerecord callback