CakePHPでマイグレーションを使うには、プラグインを導入する必要があります。本記事は、マイグレーションプラグインを導入し、データベースをマイグレーションで管理する方法をまとめたメモです。
CakeDC Migrationの導入
CakeDCが開発しているMigrations Plugin for CakePHPを利用する
以下のgitコマンドを叩き、sub moduleとして登録する
git submodule add \
git::github.com/CakeDC/migrations.git app/Plugin/Migrations
app/Config/bootstrap.php
にてプラグインロードを記述
CakePlugin::load(array('Migraions'));
初期マイグレーションファイルの作成
1. マイグレーションを管理するためのテーブルを以下のコマンドで作成
Console/cake Migrations.migration run all -p
2. 初期マイグレーションファイルの作成
Console/cake Migrations.migration generate -f
引数の-fはモデルが存在しないテーブルも含めたマイグレーションファイルを作成するため
3. データベースのスキーマファイルの作成
Console/cake schema generate –f
データベースを変更しマイグレーションを作成する
1. SQLで直接テーブルを作ってしまう
2. マイグレーションファイルを作成する
データベースとの差分を見て自動的にMigrationファイルを作成してくれる
Console/cake Migrations.migration generate -f