我在几个模块中有一个类:This::Is::A::Long::ClassName
。有没有办法在一个脚本或方法中使 ClassName
可用而无需引用命名空间?而不是写:
This::Is::A::Long::ClassName.do_something
This::Is::A::Long::ClassName.do_something_else
This::Is::A::Long::ClassName.do_something_different
有以下可能吗?
include This::Is::A::Long
ClassName.do_something
ClassName.do_something_else
ClassName.do_something_different
如果您将模块用于命名空间,您发布的代码应该可以工作,请参见以下示例:
module Long
module Name
class ClassName
end
end
end
ClassName
# => ... uninitialized constant ClassName (NameError)
include Long::Name
ClassName
# => Long::Name::ClassName
我是一名优秀的程序员,十分优秀!