YAML中の重複箇所をまとめる方法(アンカーとエイリアス)
Railsで開発してる時、config/database.ymlの内容をまとめて書きたいな、と思う事がたまにあります。あまりYAMLについてきちんと知らなかったので、勉強がてらアンカーとエイリアスについて調べてみました。
ぐだぐだ文章で書くよりも、実際のYAMLを見てもらった方が早いと思うので、まずは下記を見て下さい。
development:
database: hoge_test
adapter: mysql
host: localhost
socket: /var/lib/mysql/mysql.sock
username: fuga
password:
encoding: utf8
test:
database: hoge_test
adapter: mysql
host: localhost
socket: /var/lib/mysql/mysql.sock
username: fuga
password:
encoding: utf8
production:
database: hoge_production
adapter: mysql
host: localhost
socket: /var/lib/mysql/mysql.sock
username: fuga
password:
encoding: utf8
同じ事が書いてある行がかなりあります。で、下記がアンカーとエイリアスを使用したバージョン。
common: &common
adapter: mysql
host: localhost
socket: /var/lib/mysql/mysql.sock
username: fuga
password:
encoding: utf8
development:
database: rubricks_test
<<: *common
test:
database: rubricks_test
<<: *common
production:
database: rubricks
<<: *common
複数人で開発する時、各人毎にユーザー名だのパスワードが違ったりするので、エイリアス作ってその中で各人毎の設定を書いておけば、変更箇所が減って便利かもしれません。
YAMLもきちんと知っておくと色々楽できるので、プログラマーのための YAMLなどを参考に一度きちんと勉強すると良さそうです。
Rails, YAML, エイリアス |
comments(0) |
trackbacks(0)
2009.01.19 Mon 21:40
TRACKBACKS
この記事へのトラックバックURL: http://www.red-mount.com/trackback/23_dc2e6b637dfd77f25d73cb43a8057307ce3df2cb
ABOUT ME
tak (Takahito Sezutsu)
コメント、トラックバックはお気軽に!
COMMENTS
-
Beanstalk - WEBで管理可能なフリーのSubversionサーバー
→LILAC (08.14) -
CSS Nite in Ginza Vol.29に行ってきました。
→Betsy (05.14) -
「オリジナルの項目が見つからなかったので、エイリアス“********”は開けません。」と出て、Finderで外付けHDDが開けない時は
→poo (04.19) -
MacのSkypeでログイン時プルダウンメニューに表示されるSkype名を消す方法
→tak (06.22) -
「オリジナルの項目が見つからなかったので、エイリアス“********”は開けません。」と出て、Finderで外付けHDDが開けない時は
→tak (06.22) -
「オリジナルの項目が見つからなかったので、エイリアス“********”は開けません。」と出て、Finderで外付けHDDが開けない時は
→ko (06.22) -
MacのSkypeでログイン時プルダウンメニューに表示されるSkype名を消す方法
→Mac (05.06) -
MacのSkypeでログイン時プルダウンメニューに表示されるSkype名を消す方法
→tak (03.11) -
MacのSkypeでログイン時プルダウンメニューに表示されるSkype名を消す方法
→tama (03.11) -
Mac版ATOK定額制(体験版)を1週間使ってみた
→tak (09.19)
COMMENTS