具有模块和类具有相同的名称
问题描述:
我有一个存在于目录结构模块统计:LIB/stat_creator/STAT/具有模块和类具有相同的名称
在LIB/stat_creator/stat.rb我在lib文件/ stat_creator/STAT /目录下,我需要,以及:
module StatCreator
module Stat
end
end
当我使用该模块我指的是类作为
StatCreator::Stat::Foo.new
现在我想生活在应用程序根统计类。我已经在app/models中创建了我的Stat类,并将其设置为routes.rb。但是,如果我去轨控制台,并尝试使用该统计类应用程式,例如/型号:
Stat.by_user_id("ID")
我得到的错误:LoadError:预计../lib/stat_creator/stat.rb定义统计
我想用命名空间的点是为了避免这种冲突,所以我不明白我的“米做错了
答
我会做:
::Stat.by_user_id("ID")
你任何机会在你的“Stat”模型中“包括StatCreator”? – Jits 2011-06-05 19:35:25
我不包括StatCreator,但我确实如上所述添加了它。我认为这必须完成,因为我不想调用Stat :: Foo.new,因为这会与Stat类产生冲突。 – 2011-06-05 19:44:15