如何暂时禁用acts_as_audited和actionmailer,运行脚本然后重新启用

时间:2011-09-11 02:47:53

标签: ruby-on-rails actionmailer acts-as-audited

这可能很简单,但我正在撕裂我的头发。我有一个脚本,我想每天运行,脚本更新大量的记录(跨20个不同的模型),我真的不关心维护这些质量变化的审计跟踪(或想要触发1000的通知) 。我真的需要一种暂时禁用acts_as_audited和动作邮件程序的方法,运行脚本然后重新启用它们。

有一种简单的方法吗?

我正在使用ree / rails 2.3

1 个答案:

答案 0 :(得分:1)

最后想出来,这篇博文:http://blog.viarails.net/2009/1/29/disabling-callbacks-in-an-activerecord-data-migration,这个stackoverflow问题帮助How can I avoid running ActiveRecord callbacks?

为了更进一步,您还可以通过执行此操作禁用在回调链中调用的特定方法(例如,在before_save中执行的通知) YourModel.before_save_callback_chain.select {| m | m.method ==:your_notification_method_symbol} .clear

只是张贴这个,以便其他人可以找到它...享受!