最近 CakePHP2 で調べ物をするときに、アソシエーションのあるテーブルが必要であったり、bake することが多いのでメモしておきます。
メモ内容
- PHP パス通しと bake コマンド(Windows、XAMPP)
- テーブル定義のスキーマ
PHP パス通しと bake コマンド
set path=%path%;C:\pleiades\xampp\php set path=%path%;C:\pleiades\xampp\htdocs\cake\app\Console path cd C:\pleiades\xampp\htdocs\cake php app\Console\cake.php bake all
テーブル定義のスキーマ
CREATE TABLE users ( id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY, username VARCHAR(255) NOT NULL UNIQUE, password CHAR(40) NOT NULL, group_id INT(11) NOT NULL, created DATETIME, modified DATETIME ); CREATE TABLE groups ( id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100) NOT NULL, created DATETIME, modified DATETIME ); CREATE TABLE profiles ( id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY, user_id INT(11) NOT NULL, catch_phrase VARCHAR(255) NOT NULL, self_introduction TEXT, secret1 VARCHAR(255), secret2 VARCHAR(255), secret3 VARCHAR(255), created DATETIME, modified DATETIME ); CREATE TABLE descents ( id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY, profile_id INT(11) NOT NULL, job VARCHAR(255), address VARCHAR(255), secret1 VARCHAR(255), secret2 VARCHAR(255), secret3 VARCHAR(255), created DATETIME, modified DATETIME ); CREATE TABLE posts ( id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY, user_id INT(11) NOT NULL, title VARCHAR(255) NOT NULL, body TEXT, created DATETIME, modified DATETIME ); CREATE TABLE widgets ( id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100) NOT NULL, part_no VARCHAR(12), quantity INT(11) );
おわりに
ちなみに、bake コマンドは、PHP で実行しています。
以上です。