libro
www.tuyano.com
初心者のためのCakePHP2 プログラミング入門

bakeによる高速開発 (5/8)

作成:2011-11-30 08:09
更新:2011-12-06 19:49

■Modelを作成する

まずは、Modelの作成からです。インタラクティブBakeシェルで、「M」を入力し、Enterしてください。Model作成のプログラムが実行されます。データベース設定と同様、表示される質問に順に答えを入力していきます。
Bake Model
Path: …Modelのパス…
最初に、このような表示がされます。これで、Modelの保存場所が確認できます。続いて、現在のデータベース設定で使用されているデータベースに用意されているテーブル名が一覧表示され、どれを使用するか尋ねてきます。
Possible Models based on your current database:
1. Mydata
Enter a number from the list above,
type in the name of another model, or 'q' to exit
[q] >
ここでは、例として「mydatas」というテーブルを用意しておきました。これを使用する「Mydata」モデルが、候補としてあがっています。このまま「1」と入力してEnterすると、mydatasテーブルを使用するMydataモデルの作成を行います。
Would you like to supply validation criteria
for the fields in your model? (y/n)
[y] >
バリデーションの設定を行います。バリデーションというのは、各項目の入力チェック機能のことです。これにより、入力されるデータを自動チェックできます。「y」を入力すると、テーブルに用意されている1つ1つの項目について、どのバリデーションを設定するか尋ねてきます。

今回は、まだバリデーションについて説明もしていないことですし、「n」で設定しないようにして次に進みましょう。
Would you like to define model associations
(hasMany, hasOne, belongsTo, etc.)? (y/n)
[y] >
これは、複数モデルの連携を行うための設定です。CakePHPでは、他のモデルと様々な形で連結した処理が行えます。これも「y」を入力すると、どういう連携処理をどのモデルと行うか尋ねてきます。

これも、まだ説明していませんし、他にテーブルも用意してないので「n」で設定しないで進みましょう。
------------------------------------------------------
The following Model will be created:
------------------------------------------------------
Name:       Mydata
DB Table:   `mydatas`
------------------------------------------------------
Look okay? (y/n)
[y] >
設定の確認画面です。今までの設定内容が表示されます。これで「y」を入力すれば、Modelクラスが自動的に生成されます。実に簡単ですね。
PHPUnit is not installed. Do you want to bake unit test files anyway? (y/n)
[y] >
作成後、「ユニットテストを作成するか?」と尋ねてきます。テスト用のプログラムを作る機能です。今回は「n」で作成しないでおきましょう。

これで、再びインタラクティブBakeコンソールの画面に戻って来ました。あっけないほど簡単にModelが作成されましたね。まぁ、バリデーションなどを設定するともう少し手間がかかりますが、面倒なだけで難しいわけではありません。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。


※関連コンテンツ

「初心者のためのCakePHP2 プログラミング入門」に戻る