rails 3不会从另一个帮助程序中自动加载一个帮助程序

时间:2013-11-04 14:19:23

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

我有一个自定义帮助程序路径lib / helpers,我通过在application.rb中添加以下来自动加载:

config.autoload_paths += %W(classes helpers).map{|dir| "#{Rails.root}/lib/#{dir}"}

其中一个帮助者VideoHelper在其中一个方法中使用了FileHelper:

class VideoHelper

 def my_method
  FileHelper::my_method
 end

end

在使用rspec测试VideoHelper的my_method时,对FileHelper :: my_method的所有调用都失败了:

NameError:
   uninitialized constant VideoHelper::FileHelper

如果我在VideoHelper类声明之前添加对FileHelper的调用,则测试成功:

FileHelper
class VideoHelper

 def my_method
  FileHelper::my_method
 end

end

我是否必须在VideoHelper中要求FileHelper,即使它是在autoload_paths中声明的?

1 个答案:

答案 0 :(得分:0)