【CakePHP3】Migrationsプラグインを道入する。

bakeも問題無く動作するしいよいよCake3も熱くなってきたね。モデル周り以外は2系とそんなに使い方に差異はないかも。session周りが若干変わったくらい?

インストール手順

  • まずはcomposer.jsonに下記を追記
  • したらupdate
  • 最後にプラグインをロード

まぁ読み込めればどこでもいいんだけどbootstrap.phpあたりで読み込むのがベターかと。

使い方

cliからbin/cake migrationsで呼び出せる。

  • まずは初期化

これをすると一番はじめのマイグレーションファイルが生成されて、DBにも履歴管理用のテーブルが生成される。
この生成されたファイルのup()メソッドにアップグレード用のSQLを記述。
down()メソッドにダウングレード用のメソッドを記述する。

※Symfony2のようなDBの差分自動算出機能はない模様。(これはマジで不便)

なので下記のように自分で書いてやる。
※SQLは適当なので注意。

down()メソッドに差し戻し用のSQLも書いてやったら、migrateを実行。

差し戻したければrollback

とりあえずこれだけ知ってれば使えるはず。
あとは公式を参照されたし。

https://github.com/cakephp/migrations