[英]Is it possible to know what exactly changed using an observer in ruby on rails?
我需要在产品价格发生变化时发送电子邮件提醒。 是否可以使用ActiveRecord::Observer
执行此操作,还是需要在编辑表单中使用编程逻辑?
您可以使用Dirty Objects来实现这一点,在这种特定情况下,您将在观察者中使用这样的东西。
FooMailer.deliver_alert(foo) if foo.price_changed?
根据:“ 一旦你保存了一个脏对象,它就会清除它改变的状态跟踪并再次被认为是不变的 ”你应该要求prince_changed?
在save
操作完成之前。
希望它能帮到你。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.