【问题标题】:How to know which method I am currently in [duplicate]如何知道我目前采用哪种方法[重复]
【发布时间】:2013-02-10 07:42:33
【问题描述】:

在我正在编写的一个方法中,我的代码如何知道它当前在哪个方法中?我需要这个是因为我想获取方法名称并解析它以获取其中的一部分,例如“add_order”,然后我可以使用第二部分“order”进行处理。

【问题讨论】:

标签: ruby metaprogramming


【解决方案1】:

使用__method__获取你当前所在方法的名称

【讨论】:

【解决方案2】:
def get_mname
  caller[0]=~/`(.*?)'/  # quote is a backtick
  $1
end

def name_of_my_method
  puts get_mname
end

name_of_my_method

# => name_of_my_method

【讨论】:

    猜你喜欢
    • 2014-02-25
    • 2017-02-08
    • 1970-01-01
    • 2013-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-08
    相关资源
    最近更新 更多