我想補充的審計觀察其確實行動隨時after_create 3款(書籍,人物,作家)...Rails 3的觀察 - 想學習如何實現觀察員多個型號
我最近聽說過Observer功能,但找不到任何有關此功能的文檔。它支持Rails 3嗎?
如何爲3個模型創建一個after_create的Auditor Observer?
感謝
我想補充的審計觀察其確實行動隨時after_create 3款(書籍,人物,作家)...Rails 3的觀察 - 想學習如何實現觀察員多個型號
我最近聽說過Observer功能,但找不到任何有關此功能的文檔。它支持Rails 3嗎?
如何爲3個模型創建一個after_create的Auditor Observer?
感謝
Rails的observers是甜的,您可以在一個觀察者內observe
多個模型
首先,你需要生成你的觀察:
rails g observer Auditor
然後,在你新鮮auditor_observer.rb文件定義您想要的模型observe
,然後添加after_create
回調。
class AuditorObserver < ActiveRecord::Observer
observe :model_foo, :model_bar, :model_baz
def after_create(record)
#do something with `record`
end
end
在application.rb中添加
config.active_record.observers = :auditor_observer
,它應該工作。
奇怪,由於某種原因,它不起作用。我添加了一個調試器記錄器,沒有寫入任何內容。是否需要其他一些步驟才能讓觀察員參與進來? – AnApprentice 2010-10-01 01:35:55
K發現它需要是「ActiveRecord :: Observer」,它需要在config目錄下的application.rb文件中定義。 – AnApprentice 2010-10-01 01:43:29
是的你是對的,編輯答案。 – jpemberthy 2010-10-01 13:51:34
不要忘記在你的application.rb'config.active_record.observers =:auditor_observer'的第25行添加這個。 – 2011-03-31 18:27:46