如果没有很多具体的代码,这只是模糊的,但我会尽我所能。
考虑到rails引擎,基本引擎而不是自己空间中的可安装引擎,如何将应用程序中的方法作为应用程序控制器的before_filter提供给应用程序?
我一直在查看Devise代码,因为我想要的是与我对Devise的体验相似,但我承认我并不理解我所经历的很多内容。
如果我将include Myengine::Mymodule
放在我希望有可用于过滤的方法的应用程序控制器中,我可以这样做,但我希望只使用这些方法而不必包含模块。
这是尝试将rails应用程序转换为多个rails应用程序使用的引擎的最新障碍,并且对获取正确命名空间,模块配置等的任何指导表示赞赏。
答案 0 :(得分:5)
如果我理解正确,您可以使用初始化程序,例如:
module MyEngine
class Engine < Rails::Engine
initializer "myengine.load_helpers" do
ActiveSupport.on_load(:action_controller) do
include MyEngine::Helpers
end
end
end
end