最近 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 で実行しています。
以上です。
