在Rails应用程序中放置自定义类的位置,以便全局可用?

时间:2011-04-25 01:50:20

标签: ruby-on-rails singleton

我有一个位于'lib'的自定义类,我想创建一个我可以在我的Rails应用程序中调用的实例 - 从控制器到rake任务。

我似乎可以使用'initializers'文件中的简单变量来执行此操作,如下所示:

@foo = "bar"

我可以在任何地方看到@foo。如何创建我的类的实例,以便我可以从任何地方调用它及其方法?

TIA

2 个答案:

答案 0 :(得分:6)

在lib目录中:lib/some_thing.rb

另请参阅config/application.rb中的评论:

...
# Custom directories with classes and modules you want to be autoloadable. 
...

答案 1 :(得分:3)

听起来你正试图在lib中创建一个类的单例实例。

在ruby标准库http://www.ruby-doc.org/stdlib/libdoc/singleton/rdoc/index.html

中查看Ruby的单例模块

然后你可以随时通过

访问它

SomeClass.instance