所以我发布的代码太多了,我用谷歌搜索但没有找到任何解决方案。
我有一个班级,例如:
class Example
def initialize
#some_code
p "class was initialized"
end
end
控制台打印“类已初始化”两次,我只能找到一行初始化类。我的问题是,如果有一些方法可以从调用类的initialize方法的位置进行查看,那么我可以找出它初始化两次的原因。
答案 0 :(得分:2)
class Example
def initialize
#some_code
p "class was initialized"
puts caller_locations
end
end
在遗产Ruby中:
class Example
def initialize
#some_code
p "class was initialized"
puts caller
end
end
答案 1 :(得分:1)
您可以引发/捕获异常,这将使您可以访问堆栈跟踪。
class Example
def initialize
begin
raise
rescue => e
puts e.backtrace
end
end
end