【问题标题】:Spec dummy not recognizing moduleSpec dummy 无法识别模块
【发布时间】:2014-07-01 21:51:51
【问题描述】:

我有一个设置,我想将引擎内部和外部使用的代码分解到模块中。但是,当运行引擎spec 虚拟测试时,虚拟无法在我的主应用程序的 lib 文件夹中找到模块(我认为它的范围是引擎的目录)并且 rake 中止。

这是一般设置:

这将位于主应用程序的 lib 文件夹中 (my_module.rb):

module MyModule
   def module_function
   end
end

这将位于主应用的模型目录中:

require 'my_module'
class myModel
  include MyModule
  module_function()
end

这将在引擎中:

require 'my_module' 
class MyEngineModel
  include myModule
  module_function() 
end

但是,在为 dummy 设置 rake 时,它​​给我一个 load error 的引擎规格:

rake aborted!
LoadError: cannot load such file -- my_module

【问题讨论】:

    标签: ruby-on-rails ruby module require


    【解决方案1】:

    引擎在主应用程序之前加载。因此,如果您的模块要在引擎和应用程序中使用,我建议您将其放在引擎的 lib/ 文件夹中,而不是应用程序的 lib 文件夹中。

    您可能会发现更多信息here

    【讨论】:

      猜你喜欢
      • 2022-01-22
      • 2021-11-01
      • 2016-07-08
      • 2023-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-03
      • 2014-12-07
      相关资源
      最近更新 更多