【问题标题】:How do I avoid require relative in my Rails 4 application?如何在我的 Rails 4 应用程序中避免 require relative?
【发布时间】:2016-03-17 02:28:59
【问题描述】:

如何避免在 Rails 4.2.5 应用程序中调用我的 rspec 模型测试?

我在 application.rb 中有config.autoload_paths << Rails.root.join('lib')

然而,在我的 rspec 模型测试 (spec/models/other_test_spec.rb) 中没有使用 require_relative,我似乎无法加载 FileService 类:

require_relative '../../lib/adapter/file_service'

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-4 rspec


    【解决方案1】:

    这是因为您在自动加载路径中添加了 lib,而不是 lib/adapter。在寻找FileService 类时,rails 将只扫描自动加载文件夹而不查看自动加载子文件夹。子文件夹用于命名模块范围内的常量。

    解决方案 - 将您的课程重命名为 Adapter::FileService。如果这已经是太多工作了,您可能还想将lib/adapter 添加到您的自动加载路径中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-03
      • 2013-01-12
      • 1970-01-01
      • 2019-12-30
      • 1970-01-01
      • 2015-12-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多