我想为现有的 Rails 应用程序添加问题观察器。
我创建了一个插件,并在插件的 app/model
下保存了 custom_observer.rb
当我将 :custom_observer
添加到 config/application.rb
中的 config.active_record.observers
时它起作用
我试过类似的东西
RedmineApp::Application.configure do
config.after_initialize do
config.active_record.observers << :custom_observer
end
end
在插件的 init.rb 中,但这不起作用。
这样做的更好方法是什么? 谢谢
最佳答案
如果您使用的是 Rails 4.0,observers have been extracted从核心进入一个名为rails-observers
的 gem
虽然您没有说明您使用的是哪个版本的 Rails,但如果您使用的是 Rails 4,我建议您这样做:
gem 文件
#Rails Observers
gem "rails-observers", "~> 0.1.2"
配置
#config/application.rb
#Observer Classes
config.active_record.observers = :custom_observer
观察者
#models/customer_observer.rb
class CustomObserver < ActiveRecord::Observer
end
为我们工作,我已经为您提供了实时代码:)
关于ruby-on-rails - 插件中的 Rails ActiveRecord::Observer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13137036/