我想做一個鉤子方法,每次調用某個類的任何函數時都會調用它。 我已經試過method_added,但它在類定義時只執行一次,定義「method_called」..我如何製作一個鉤子方法,每次調用一個類的任何函數時都會被調用?
class Base
def self.method_added(name)
p "#{name.to_s.capitalize} Method's been called!!"
end
def a
p "a called."
end
def b
p "b called."
end
end
t1 = Base.new
t1.a
t1.b
t1.a
t1.b
Output:
"A Method's been called!!"
"B Method's been called!!"
"a called."
"b called."
"a called."
"b called."
但我的要求是,是獲取程序的任何地方被稱爲類的任何功能觸發「method_called」,掛鉤方法。
Expected Output:
"A Method's been called!!"
"a called."
"B Method's been called!!"
"b called."
"A Method's been called!!"
"a called."
"B Method's been called!!"
"b called."
如果有任何已定義的現有掛鉤方法工作原理相同,請告訴它。
在此先感謝..
雅我絕對仰望他們,並感謝您的答案。 – 2010-07-13 11:23:07
mikej意味着您應該回頭查看以前的問題,然後單擊任何可以充分解決問題的答案的複選框。 – sarnold 2010-07-13 11:47:43