如何在Rails 3中获取当前方法?

B S*_*ven 5 methods logging ruby-on-rails object ruby-on-rails-3

我找到了以下代码,我猜在config/initializers/kernel.rb中.

module Kernel
   private
   def this_method
     caller[0] =~ /`([^']*)'/ and $1
   end
end
Run Code Online (Sandbox Code Playgroud)

要添加到日志中,这是获取当前方法的首选方法吗?

谢谢.

Aar*_*nni 7

这似乎是获得调用方法的一种不错的方法,并使您能够调用this_method代码添加到日志中.

如果您使用的是Ruby 1.9.2,则可以调用__method__而不用担心定义一个特殊的方法来执行此操作.