Rails っぽいコンフィグ
前回 MySQL を Ruby から操作出来るようにしたので、今回は Rails のように開発版と本番の切り替えを簡単に行えるようにしました。
とは言え、サーバの動作時に切り替えるようなものではなく、スクリプトが動作するときに指定した設定で読むだけのものです。
db.yml
:usetype: :developement :developement: :database: db :host: host :user: user :pass: pass :production: :database: db :host: host :user: user :pass: pass
上記の設定ファイルを読みこんで、MySQL の設定を抜き出すようにしています。
require 'mysql' class SQL def initialize @list = YAML.load(File.read("db.yml")) end def type @list[@list[:usetype]] end end sql = SQL.new.type
これで、
db = Mysql::new(sql[:host], sql[:user], sql[:pass], sql[:database])
とすれば、db.yml の :usetype で指定した設定が引き出せます。
結構簡単に切り替えが出来るんですね。データベースの操作についてはまだ触り始めで勉強中なので今回はここまでにしておきます。