2015-01-13 36 views
0

我有以下模塊/類的結構:命名空間不斷導致錯誤:NameError:未初始化不斷

module A 
    module B 
    class Foo; end 
    class Bar 
     MY_CONST = 42 
    end 
    end 
end 

我已經把binding.pry在我的RSpec的測試。如果我訪問

A::B::Bar::MY_CONST 

我得到的錯誤:NameError:未初始化常數A :: B ::酒吧

如果我再做 A :: B ::美孚 我得到的對象A :: B ::富

然後,如果我做 A :: B ::酒吧:: MY_CONST 第2個時間,我得到42

如果我嵌入類酒吧類Foo內,並使用 A :: B ::富::酒吧:: MY_CONST 我直接得到42。但是,我不想在Foo中嵌入Bar。

這是怎麼回事?

RSpec的代碼是一個私有函數中,看起來像這樣:

A::B::Bar::MY_CONST 
+2

請給我看RSpec。 –

回答

0

原來,現在要求是嵌入酒吧美孚內。這樣做,我正在使用:

A::B::Foo::Bar::MY_CONST 

成功。

相關問題