2016-02-12 164 views
0

我有一个Effect类在模型中,和一个文件夹"effect"类似app/models/effect/Effect::Status类。效果类与此配置中的导轨类似。冲突之间的名称与模块的类名称和模块的子类名称

但是我对模型的另一个类Status

class Status < ActiveRecord::Base 

    DEATH = 1 

现在我想调用这个常数Effect类,如:

class Effect 
    def self.apply 
    foo = Status::DEATH 
    end 
end 

不过,我有以下错误:

未初始化的常量效果::状态:: DEATH

我觉得这是StatusEffect::Status

那么,如何解决这个冲突?

回答

1

首先要求Status类变为Effect

然后,在前面使用::进行访问,以指示没有父模块。

require 'status' 

class Effect 
    def self.apply 
    foo = ::Status::DEATH 
    end 
end