Railsの設定は、config/environment.rbのなかで、
Rails::Initializer.run do |config|
# Settings in config/environments/* take precedence over those specified here
config.log_level = :debug
というような感じに記述します。
アプリケーション側からここで設定した値を参照したいという場合に、その方法が提供されている気がしたので、Rails::Initializerのソースを探してみたのですが、そのような手段は用意されていないようでした。
Railsのコアを書き換えるプラグインを書こうかと思ったのですが、ふと以下のように書けば問題が解決することに気がつきました。
Rails::Initializer.run do |config| $rails_config = config
あとはどこからでも、グローバル変数の$rails_configを介して、Railsの設定情報にアクセスすることが出来ます。
posted by
genki on Mon 5 Nov 2007 at 16:27 with 0 comments