在我的rails可安装引擎中:
config.to_prepare do
# works fine, and reload automatically in development
ApplicationController.helper :application
# works fine, but doesn't reload. After restart server, it works.
ApplicationController.helper Rails.application.helpers
当arg是符号或字符串时,它看起来很好。但是当arg是像Rails.application.helpers
这样的模块时,它不起作用。
或者有一种很好的方法可以从[:application, :users]
获得Rails.application.helpers
等所有帮助。
Rails:4.2.3
答案 0 :(得分:0)
您可以配置引擎的autoload_paths。
LIB / my_engine / engine.rb
module MyEngine
class Engine < ::Rails::Engine
...
config.autoload_paths += Dir[Engine.root.join('app', 'helpers')]
end
end
答案 1 :(得分:0)
对于使用Rails 6的人,您可能想尝试使用传统的自动装带器而不是zeitwerk
config.autoloader = :classic