我正在编写一个具有身份验证的身份验证引擎!应用程序控制器中的方法以及当前用户帮助程序方法等。
我希望能够通过此身份验证!我的主应用程序中的方法,并使用由引擎应用程序控制器设置的current_user。
在进行了一些谷歌搜索之后,我遇到了这篇文章How to access Rails Engines methods from main application?,但这没有帮助,也没有任何建议的链接。
现在我的engine.rb文件中有以下代码:
require 'my_engine'
module MyEngine
class Engine < ::Rails::Engine
isolate_namespace MyEngine
initializer "my_engine.load_helpers" do
ActiveSupport.on_load(:action_controller) do
include MyEngine::Helpers
end
end
end
端
但是这给了我以下错误
uninitialized constant MyEngine::Helpers
如果可能的话,最好的方法是什么?
在开始之前,我完成的工作方式是设置会话[:current_user_id],然后我将其传递给主控制器中的current_user方法,该方法也包含了身份验证!将用户发送到身份验证引擎的方法。如果我可以打电话进行身份验证,那就太好了!在主应用程序中,让引擎应用程序控制器处理该方法并设置当前用户。