【问题标题】:rails 3 won't autoload one helper from another helperrails 3 不会从另一个助手自动加载一个助手
【发布时间】:2013-11-04 14:19:23
【问题描述】:

我有一个自定义助手路径 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 中声明?

【问题讨论】:

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


    【解决方案1】:

    【讨论】:

      猜你喜欢
      • 2016-09-02
      • 2013-06-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-07
      • 1970-01-01
      • 1970-01-01
      • 2018-08-10
      相关资源
      最近更新 更多