项目中希望 Model A
某个字段(例如为 attr)保存成功后 touch 一下相关联的 Mobel B
,所以尝试在 Model A
中使用
after_save :touch_method, if: :attr_is_changed?
def touch_method
......
end
def attr_is_changed?
previous_changes.include?(:attr)
end
查看网上一些资料发现,after_save 后,previous_changes 就会被置空了,所以attr_is_changed?
一直都是返回 false 的。
请问大家有什么方法可以解决这个问题?