我在命名空间类中包含模块时遇到问题。以下示例将引发错误uninitialized constant Bar::Foo::Baz (NameError)
。我在这里缺少什么基本的Ruby知识?
module Foo
module Baz
def hello
puts 'hello'
end
end
end
module Bar
class Foo
include Foo::Baz
end
end
foo = Bar::Foo.new
答案 0 :(得分:7)
使用::
强制查找仅限顶级:
module Bar
class Foo
include ::Foo::Baz
end
end
答案 1 :(得分:0)
include ::Foo::Baz