CakePHPを使って複数人開発する際のDB同期
cakePHP September 8th, 2011複数人で開発する場合、DBのテーブルレイアウトの同期が面倒だったりする。
CakePHPではcake schemaコマンドを使うとよさそう。Railsのrake db:migrateと同じ役割かな。
% cd /path/to/cake_install/app
% cake schema generate -f
適当な場所でこれを実行するとどこのDB見たらいいのかわからんので以下のようなエラーが出る。
Fatal error: ConnectionManager::getDataSource - Non-existent data source default in /path/to/cake_install/cake/libs/model/connection_manager.php on line 102
(cakeコマンドはパスを通しておく → KYOKUTYO NO BLOG. » Blog Archive » CakePHPのcakeコマンドを使う)
config/schema/schema.php
というファイルに書き出される。
テーブルレイアウト変更する場合はこれを編集して
% cake schema run create
したらよさげ。
gitなどでschema.phpを共有すると簡単にテーブルレイアウトが同期できる。
