Рубиновые доработки и крючки
Я пытаюсь использовать рубиновые доработки, чтобы применить крючки для рельсов.
Я хочу избежать исправления обезьян. При исправлении обезьяны это будет работать как таковое
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)
но, кажется, не в состоянии правильно понять синтаксис.
Любая помощь приветствуется.
Благодарю.
1 ответ
Есть причина, по которой вы не используете обратные вызовы ActiveSupport? Посмотрите здесь: http://api.rubyonrails.org/classes/ActiveSupport/Callbacks.html