将常量公开给Rails中的所有子模块

时间:2013-06-07 16:45:03

标签: ruby-on-rails module

我有一个Rails嵌套模块如下:

lib
 - Parent
   - Child1.rb
   - Child2.rb

在Child1.rb中我定义:

module Parent
  module Child1
  end
end 

Child2模块的定义类似。

在我的模型中,我打电话给:

model MyModel
   include Parent::Child1
   include Parent::Child2
end

我有一些常量要在Child1和Child2之间共享。我该如何实施呢?

1 个答案:

答案 0 :(得分:1)

在lib中创建一个名为parent.rb的文件来定义父模块并将常量放在那里

module Parent
  CONSTANT1 = "1"
  CONSTANT2 = "2"
end

这两个常量现在可以在您的子模块中使用

结构看起来像

lib
 - Parent
   - child1.rb
   - child2.rb
 - parent.rb