我有一个Rails应用程序,它从一些Java服务中加载大量数据。我正在编写一个模块,它允许我用这些数据填充一些选择框,并且我正在试图正确地包含这些框,以便在我的视图中引用它们。这里是我的模块作为方法集合的红宝石模块
module FilterOptions
module Select
def some_select
return "some information"
end
end
end
我的想法是包括在我的application_helper FilterOptions,我想那我可以用Select::some_select
这是不是这样引用我的方法。我必须include FilterOptions::Select
然后我可以自己参考方法some_select
。我不希望这样,因为我认为有人可能不知道some_select
来自我自己的模块有点令人困惑。
所以,我怎么写的就像是公开的静态方法,模块的方法,所以我可以有我的主要模块,并使用子模块的命名空间一样Select::some_select
好,我觉得挺傻的,我这样做在类的所有与自我的时候,我不知道为什么,我想到了一个模块会有所不同。顺便说一下,使用Select :: some_select和Select.some_select有什么区别? – brad 2010-01-18 15:34:51
这是一个很好的问题。说到常量,你需要使用::符号,因为它不是方法调用,但我认为你可以使用任何方法。 – tadman 2010-01-18 17:38:40