我从我的rails引擎访问Rails.root
时遇到了一些问题,我正在创建。我需要从主应用程序中获取yml配置文件。
处理发动机配置是否有“最佳实践”?
答案 0 :(得分:8)
假设你有一个模块属性。
# lib/my_engine.rb
module MyEngine
mattr_accessor :app_root
end
然后你可以像这样从初始化块加载它:
# lib/my_engine/engine.rb
module MyEngine
class Engine < Rails::Engine
initializer "my_engine.load_app_root" do |app|
MyEngine.app_root = app.root
end
end
end
答案 1 :(得分:1)
而是使用Rails.root
使用:MyEngine::Engine.root
; D