Rails无法识别lib文件?

时间:2011-12-01 15:43:23

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

我有lib/redirect_follower.rb个文件

在我使用该文件的地方,我将其包含在require 'RedirectFollower'

但是导致这个错误发挥作用:

no such file to load -- RedirectFollower

有任何线索吗?几个小时以来我一直在敲打这个问题。尝试使用application.rb自动加载所有库,但这也无效。

2 个答案:

答案 0 :(得分:3)

require用于包含文件,而不是类。

您需要require "redirect_follower",即实际文件名,而不是类名。您可能还需要将lib添加到包含路径或require "lib/redirect_follower"

答案 1 :(得分:2)

config/application.rb:中添加:

config.autoload_paths << "#{config.root}/lib"

使用此设置,您的模块(即lib /下的文件)将自动被要求,因此您不必在任何地方要求它们(实际上,您永远不应该要求它们,因为这会对取消/加载文件产生负面影响通过Rails)。