我只是坚持了一段时间.拿这个基础:
module Top
class Test
end
module Foo
end
end
Run Code Online (Sandbox Code Playgroud)
后来,我可以通过这样做Foo来扩展内部的类Test:
module Top
module Foo
class SomeTest < Test
end
end
end
Run Code Online (Sandbox Code Playgroud)
但是,如果我尝试通过使用::指定模块来最小化缩进:
module Top::Foo
class Failure < Test
end
end
Run Code Online (Sandbox Code Playgroud)
这失败了:
NameError:未初始化的常量Top :: Foo :: Test
这是一个错误,还是Ruby解析变量名称的逻辑结果?