我在 Rails 应用程序中使用 Rails 引擎作为 Gem。现在,我在我的 rails 应用程序模型中从 rails 引擎继承了一个类。
1. Rails 应用模型代码
class AppModelOne < EngineGem::EngineClassOne
# body of the class
end
但是rake zeitwerk:check
在终端中运行命令时,我收到了一个错误,即
未初始化的常量 <class:32323332xx> EngineModuleTwo
现在我检查了 EngineClassOne 的 Rails 引擎代码,其中有一个 EngineModuleTwo 的包含语句。
2. Rails 引擎类代码
module EngineGem
class EngineClassOne
include EngineModuleTwo::EngineSubModuleOne
end
end
引擎文件结构:
EngineGem -> |-> app -> models |-> engine_gem -> engine_class_one
| |-> engine_module_two -> engine_sub_module_one
|-> gemspec
为什么它无法加载模块,任何人都可以解释如何在我的 rails 应用程序中使用它时将模块加载到 rails 引擎中吗?