Rails,自定义文件夹和命名空间

我正在运行Rails 3.2.7,

我有一个文件夹’/ app / jobs’

以及我的’config / application.rb’文件中的以下内容

config.autoload_paths += %W(#{Rails.root}/app/jobs) 

一切都很好。

但是,如果我想命名我的类,例如

 class Jobs::UpdateGameStatus #methods etc end 

而不是

 class UpdateGameStatus #methods etc end 

然后我明白了

未初始化的常量作业(NameError)

这不是世界末日,但我很想知道为什么……

我最后修复了它,用Jobs模块包装我的所有类是我需要做的。

我的文件位于’app / jobs’

看起来像这样

 module Jobs class JobName #methods etc end end 

并且像这样使用

 Jobs::JobName.method(args) 

我知道你已经对它进行了排序,这是旧的,但在ruby中,也可以使用class Jobs::JobName直接声明命名空间类。 打字少一点,并取得相同的结果。

编辑:正如@D-side指出的那样,乔布斯已经被定义了。 我自己使用它的代码基于STI,它假定我扩展的前一个类/模块已经存在。