假设我在我的 Rails 应用中某处定义了一个名为 bla
的函数。
在 ruby 或 rails 中有没有一种方法可以动态/以编程方式打印用于定义该函数的代码?例如:
def bla
puts "Hi There"
end
然后如果我调用一个函数,例如 get_definition
:
puts get_definition(:bla)
这会打印出来
"puts \"Hi There\""
有规范的方法吗?我以前实际上不需要这样做,而且我知道这在 Rails 中并不是很常见的做法。
我也不想使用元(反射)编程定义我的方法,然后存储用于定义我的方法的字符串。感谢您的帮助!
最佳答案
我不知道 John Hyland 在写什么。没有像Method#source
这样的方法(在纯 Ruby 中)。实用的解决方案是使用 pry gem .它具有让您访问源代码的方法。
关于ruby-on-rails - 有没有办法在 Rails 中以编程方式查看(或打印)方法定义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17287261/