2017-03-22 93 views
1

我正在重构一些旧代码以适合Ruby> 2.并且有一些我想要删除的alias_method_chain如何从外部预先调用后调用原始方法

但是有一些地方没有调用方法。内部的方法,我必须super肯定,但从外面?

下面给出:

module ExtraLog 
    def log 
    puts "ExtraLog" 
    super 
    end 
end 

class Klass 
    prepend ExtraLog 
    def log 
    puts "Log" 
    end 
end 

a = Klass.new 
a.log 
#=> "ExtraLog" 
#=> "Log" 

我怎么能现在所说的原日志方法而没有预谋方法被调用?像a.original_log

+0

你得到它解决了吗? –

+0

是的,非常感谢!现在不能做upvote – jbor

+0

如果我的答案为你工作,你可以接受它(在答案的分数下找一个复选标记) –

回答