我正在尝试使用 ruby 改进来应用 rails hooks。
我想避免猴子修补。当猴子修补它会这样工作
ActiveRecord::Base.class_eval do
after_find do
# do something with
my_method
end
def my_method
# something useful
end
end
通过执行以下操作,我已经能够拥有类方法:
module ActiveRecordRefinements
refine ActiveRecord::Base.singleton_class do
def my_method
#something cool
end
end
end
但我不能运行钩子。我尝试使用self.used(klass)
,但似乎无法获得恰到好处的语法。
欢迎任何帮助。
谢谢。