[英] How to get only class name without namespace
有一门课是这样的.
module Foo
class Bar
end
end
我想得到Bar
而不是Foo
的类名.
bar = Foo::Bar.new
bar.class.to_s.match('::(.+)$'){ $1 }
我可以通过这个代码得到类名,但我认为这不是最好的方法.
有没有更好的方法来获取没有名称空间的类名?
有一门课是这样的.
module Foo
class Bar
end
end
我想得到Bar
而不是Foo
的类名.
bar = Foo::Bar.new
bar.class.to_s.match('::(.+)$'){ $1 }
我可以通过这个代码得到类名,但我认为这不是最好的方法.
有没有更好的方法来获取没有名称空间的类名?
实现这一点的标准方法是调用Object#class和Module#name.例如:
bar.class.name.split('::').last
#=> "Bar"
如何从外部获取给定 lambda 的参数值,而不显式返回其“绑定”?
Docker for Mac - mkmf.rb 找不到 ruby 的头文件
判断字符串是否与 ruby 中的正则表达式匹配的最快方法?
RSpec allow/expec vs expect/and_return
在 OSX 10.10 Yosemite 上安装 Nokogiri
ruby `encode': "\xC3" 从 ASCII-8BIT 到 UTF-8 (Encoding::UndefinedConversionError)