Ruby on rails Rails无法加载模块链
我正在建造一个Rails引擎。我定义了这样一个控制器Ruby on rails Rails无法加载模块链,ruby-on-rails,ruby,rails-engines,Ruby On Rails,Ruby,Rails Engines,我正在建造一个Rails引擎。我定义了这样一个控制器 module A::B::C::D::E extend ActiveSupport::Concern # module stuff ... end class ExamplesController < ApplicationController include A::B::C::D::E # controller stuff ... end 为什么会出现此错误?因为模块在您使用时不存在。 由于未定义A,Ruby
module A::B::C::D::E
extend ActiveSupport::Concern
# module stuff ...
end
class ExamplesController < ApplicationController
include A::B::C::D::E
# controller stuff ...
end
为什么会出现此错误?因为模块在您使用时不存在。 由于未定义
A
,Ruby不知道它是什么
请注意,:
是用于查找的范围解析运算符,而不是定义类似命名空间的层次结构
如果您首先定义了A
,它将起作用:
module A
end
然后B
:
module A::B
end
然后C
:
module A::B::C
end
等等
当然,您也可以这样做:
module A
module B
module C
module D
module E
end
end
end
end
end
module A
module B
module C
module D
module E
end
end
end
end
end