Я испытываю затруднения включая модуль в namespaced классе. Пример ниже бросает ошибку 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
Используйте ::
для принудительного поиска только на верхнем уровне:
module Bar
class Foo
include ::Foo::Baz
end
end