我有以下模块/类结构:
module A
module B
class Foo; end
class Bar
MY_CONST = 42
end
end
end
我在我的RSpec测试中放了一个binding.pry。如果我访问
A::B::Bar::MY_CONST
我收到错误:NameError:unitialized constant A :: B :: Bar
如果我那么做 A :: B ::美孚 我得到了对象A :: B :: Foo
然后,如果我这样做 A :: B ::酒吧:: MY_CONST 第二次,我得到了42。
如果我在Class Foo中嵌入Class Bar,并使用 A :: B ::富::酒吧:: MY_CONST 我直接得到42。但是,我不想把Bar嵌入Foo。
这里发生了什么?
RSpec代码位于私有函数中,如下所示:
A::B::Bar::MY_CONST
答案 0 :(得分:0)
事实证明,现在的要求是将Bar嵌入Foo中。这样做,我正在使用:
A::B::Foo::Bar::MY_CONST
成功。