7

我在Rails.root从我正在创建的 rails 引擎访问时遇到了一些问题。我需要从主应用程序中获取一个 yml 配置文件。

是否有任何“最佳实践”来处理您的引擎配置?

4

2 回答 2

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
于 2012-07-23T16:13:26.273 回答
1

改为Rails.root使用:MyEngine::Engine.root;D

于 2015-07-02T01:03:45.720 回答