Rewish

CakePHPのコンソールで初期データのインポート/エクスポート

開発用のデータをチームで共有する仕組みがデフォルトでは無いっぽかったので、CakePHPのコンソールを使って、初期データのインポート/エクスポートを行うShellクラスを書いてみました。

仕組みは単純で、テーブルに入っているデータをCakePHPで扱えるデータ(Array)にして保存し、保存したデータをsaveメソッドを使って保存すると言った感じです。

インストール

コードはGitHubに置いていますので、git cloneまたはダウンロードして下さい。

CakePHP-DataShell

ダウンロードしたコードを、CakePHPのアプリケーションルート(appなど)以下にvenders/shells/data.phpをコピーすればインストールは完了。

使い方

仕組み上、まずはテーブルにデータを入力した方がスムーズです。

エクスポート

全てのテーブルのデータをエクスポートする場合は以下のようにする。

cake data export

特定のテーブルのみエクスポートする場合は、モデル名またはテーブル名を指定する。

cake data export User
cake data export users

インポート

全てのデータをインポートする場合は以下のようにする。

cake data import

特定のテーブルのみインポートする場合は、モデル名またはテーブル名を指定する。

cake data import User
cake data import users