cakePHP bakeでページを作成する
図面管理システムのテーブル
図面管理データベース(drawing_management)
各テーブルについて図書テーブル(books)
| 内容 | ID | 支社名 | 事務所名 | 地区名 | 年度 | ファイル管理番号 | 図書名称 |
|---|---|---|---|---|---|---|---|
| Field Name | id | sisya_number | jimusyo_number | chiku_coode | nendo | file_kanri_number | tosho_name |
| データ型 | 数値型 | 数値型 | 数値型 | 数値型 | 数値型 | 数値型 | テキスト型 |
| 入力規則 データサイズ | 半角:2文字 | 半角:2文字 | 半角:4文字 | 半角:8文字 | 半角:4文字 | 半角:15文字 | 全角:512 |
| 備考 | cakePHP使用時 に必要なため | 支社名テーブル にリンク | 事務所名テーブル にリンク | 地区名テーブル にリンク | 表示・入力は"H20" データは"2008" |
支社名テーブル
事務所名テーブル
地区名テーブル
bakeコマンドについて
前回では手動でMVCのファイルを作成したが、cakePHPではbakeコマンドを使用することで簡単に必要なファイルを作成することができる。ここではその基本的な方法を書く。環境設定
PHPのパスを通す必要があるためその設定の説明を行う。システムのプロパティ - 詳細設定 - 環境変数のシステム環境変数内にあるPATHを編集する。末尾に以下のパスを記述して保存する。但しインストール先によっては若干の変更がある。
;D:\xampp\php\;D:\xampp\htdocs\cake\cake\console\
bakeのテスト
コマンドプロンプトで D:\xampp\htdocs\cake\cake\console\ まで行く。続いて以下のコマンドを入力する。
php cake.php bakeこれで下の様な画面が出て、警告やエラーが出なければ q で終了させる。

bakeによるプロジェクト作成
php cake.php bake -app d:\xampp\htdocs/drawing_managementと入力すると対話形式でプロジェクトを作成していく。
Do you want verbose output?には"y"。次にデータベースの設定が見つからないと出るのでその設定を始める。
Database Configuration:データベース設定の名称を決める。ここではデフォルトで行くのでそのままエンター。
Name:
[default] >
Driver使用するデータベースを決める。これもデフォでOK。こういったやり取りでデータベースの設定を決めていく。以降は要点だけ書いていく。
[mysql] >
Persistent Connection -> n
Database Host -> localhost
Port -> n
User -> root
Password -> ""
Prefix -> n
Table encoding -> utf8
大体このような設定でOK。最後に確認の返事を返して終了する。その確認としてhttp://localhost/drawing_managementにアクセスすると正しく表示されているはず。
モデルの作成
php cake.php bake -app d:\xampp\htdocs/drawing_management
で"M"を指定する。
次にテーブルを選択する。booksを選択するので"1"と入力。
次はvalidationの是非を聞いてくる。ここでは使用するので"y"と入力。
validationでは基本的にnumericでいけるはず?
次はassociationsの設定を聞いてくる。これはデータベースのリレーションを行うかどうか。今はまだしないため"n"とする。
最後にテスト用に同じモデルを作成するかを聞いてくる。これも"n"でOK。
これで完成。
ここでのリレーションについて
一つの種類(category)と複数の商品(products)がある場合は1対多の関係にある。なのでcategory側は複数の対象があるため"hasMany"で、products側は相手が一つなので"belongsTo"になる。
コントローラの作成
php cake.php bake -app d:\xampp\htdocs/drawing_managementでメニューを開き、"c"と入力。モデルと同様にデータベースを選び進めていく。
次に対話式に情報交換しながらコントローラを作成するかどうかをきいてくるので"y"。
以下scaffoldingは"n"、
include some basic class method( index(), add(), view(), edit())は"y"、
addmin routingは"y"、
HTMLヘルパーとFORMヘルパー以外のヘルパーを使うかには"n"
use any componentsは"n"
use Sessionは"n"
最後に確認してから"y"を入力して終了。
ビューの作成
php cake.php bake -app d:\xampp\htdocs/drawing_managementのメニューで"v"。以下モデルやコントローラと同様に対話していく。
create some scaffolded viewsは"y"、
admin routingは"y"、
最後に確認してから"y"を入力して終了。
実行結果
これでMVCの全てを作成したので動作を確認する。http://localhost/drawing_management/books/および
http://localhost/drawing_management/admin/booksにアクセスしてみよう。以下はその実行例。
一覧表示

データの追加

データ追加後

2008年10月22日(水) 03:38:33 Modified by kindaisis_student06
添付ファイル一覧(全4件)
49055d38800aaee8.jpg (40.16KB)
Uploaded by kindaisis_student06 2008年10月22日(水) 03:37:20
Uploaded by kindaisis_student06 2008年10月22日(水) 03:37:20
a7f59459.jpg (51.33KB)
Uploaded by kindaisis_student06 2008年10月05日(日) 21:43:33
Uploaded by kindaisis_student06 2008年10月05日(日) 21:43:33
3114fd0c.jpg (45.52KB)
Uploaded by kindaisis_student06 2008年10月05日(日) 21:43:21
Uploaded by kindaisis_student06 2008年10月05日(日) 21:43:21
8010003d.jpg (49.04KB)
Uploaded by kindaisis_student06 2008年10月05日(日) 21:42:51
Uploaded by kindaisis_student06 2008年10月05日(日) 21:42:51