正确更新其他列的更新列

Update a column on update of others columns properly

我想知道在其他列发生变化时更改列值的正确方法,我知道一个案例的经典方法return self.prices_updated_at = Time.zone.now if currency_changed?

但是我不知道怎么写比较合适,因为我有很多案例

return unless currency_changed? || price1_changed? || price2_changed? ||
                  price3_changed? || price4_changed? ||
                  price5_changed? || price6_changed?

    self.prices_updated_at = Time.zone.now

您可以使用changed_attributes

return unless (changed_attributes.keys & %w[currency price1 price2 price3 price4 price5 price6]).any?
self.prices_updated_at = Time.zone.now