Railsで設定ファイル
(注)動作確認はRails2.0RC1。多分1.2系でもOK。
Railsで自前configというかメッセージリソースと言うかの標準的な方法がいまいち分かりません。一応この辺も踏まえつつ、前のプロジェクトで教えてもらったのを参考に*1こんな感じで作ってみました。以下でパスは作成したrailsアプリの下です。
lib/app_resources.rb
require 'singleton' require 'yaml' class AppResources include Singleton # resource file name RESOURCE_FILE = "#{RAILS_ROOT}/config/app_resources.yml" # usage: AppResources["key_name"] def self.(key) self.instance[key] end # usage: AppResources.instance["key_name"] def (key) load @app_resources[key] end # usage: AppResources.instance.load def load @app_resources ||= YAML.load_file(RESOURCE_FILE) end end
設定
config/app_resources.ymlという名前で設定ファイルを用意。
# example message: confirm: 'いいですか?' error: 'ダメです'
config/environment.rbの最後のほう*2に以下を記述
AppResources.instance.load
呼び出し例
AppResources["message"]["confirm"]