如何从我的某个模型中引用lib中的自定义类?

时间:2011-02-17 21:35:33

标签: ruby-on-rails ruby-on-rails-3

如果我在名为lib/的{​​{1}}中创建了一个文件,并且在该文件中我有一个名为toast_mitten.rb的类,那么如何在我的模型中使用该类?

例如,在ToastMitten类(我的某个模型)上的方法内,如果我尝试调用Comments,我会收到类似ToastMitten.grasp的错误。

我创建的课程旨在在我的模型和rake任务中干掉一些重复的代码。

2 个答案:

答案 0 :(得分:2)

Rails 3不自动加载lib

问题是lib没有被自动加载。我正在使用Rails 3.0.0。显然,Rails团队决定停止在Rails 3中自动加载lib,如JoséValimsays here

要加载它,我将其添加到application.rb

config.autoload_paths += %W(#{config.root}/lib)

我的同事告诉我,我的其他选择是:

  • 将其添加到config/initializers
  • 在我想要使用它的模型中明确require

答案 1 :(得分:0)

它应该是这样的,所以如果你得到一个错误尝试重新启动服务器,或检查拼写错误。如果您显示toast_mitten文件

会很有帮助