可能重复:
如何获取调用方法的名称?
在下面的示例中,我如何知道调用 foo 的方法?
class Example
def initialize
end
def foo
puts "Hello World"
end
def bar
foo
end
def cats
bar
end
end
Example.new.cats 打印 bar。我正在尝试获取整个调用堆栈。例如猫 -> 酒吧 -> foo
更新:
这有效: puts caller[0..1]
Hello World
(irb):11:in `bar'
(irb):15:in `cats'