Как выполнить обратный вызов, только если изменяется определенный атрибут объекта?

У меня есть модель Stock со следующим обратным вызовом:

after_save :update_port_stock_current_price

Но я хочу, чтобы это выполнялось только в том случае, если сохраняемый объект Stock изменил цену.

Как определить, изменился ли определенный атрибут, например stock.price, в этом сохранении?


person marcamillion    schedule 16.05.2018    source источник
comment
after_save :update_port_stock_current_price, если: -› {self.price_changed?}   -  person Rohan    schedule 16.05.2018
comment
@Rohan, который действительно работает ... как и материал ActiveRecord::DirtyModel в ссылке на другой вопрос SO, указанный @sawa.   -  person marcamillion    schedule 17.05.2018