前回の続き。
CakePHP2.0
こちらををベースに写経していきます。
Viewについて
ビューはctpという拡張子で
Viewフォルダ配下にアプリケーション名のフォルダを作成して
その配下に、アクション名のctpファイルを作ればいいんだろう。
でデータのバインドは
コントローラ側で
$this->set(‘変数名’,変数);
という具合でできる。
ビュー側では
そいつを<?php echo $変数名 ?>とかで出力する。
次。
モデルに行きます。
DB
MySQLでDB作ります。
よくあるtbl_Userとかのユーザテーブルにしました。
CakeではXXXdatasっていうテーブル名にするみたい。
でもマスタはmstリソース、イベント系はtblとかに
する事が多いのでここはtbl_Userとしておきます。
と思いきや、
cakeの特有の命名規約があるみたい。
テーブルにはsがついた複数形として
モデルはsがつかない。
というルールにしておけばよさそう。。
tbl_Users
とすれば
TblUser
というモデル名となります。
※このあとでfind(‘list’);ってやった時にフィールド名にデフォルトのモデル名が利用されてSQLエラーが
発生したけど、エラー情報からオブジェクトにaliasを設定すればよさそうなことがわかり、対応。
- controller = 機能要件に沿ったアプリケーション名として
- model ≒ DBテーブル名 ≒ 実世界のデータ・モデル名に近い命名
DB接続情報
/app/Config/.database.php.defaultがあるので
/app/Config/.database.php
としてコピーして利用します。
で、$testは今のところ利用しないので削除しちゃいます。
ひとまず勉強のためにやってますが、これはあとでbakeで対話式に
設定可能。
modelについて
DBの説明でもあったように命名に癖がある。
クラス定義
Controllerクラスの定義はまず、
App::uses('AppController','Controller');
として利用できるように定義、
AppControllerクラスを継承して定義するみたい。
ひとまず、写経してどのフォルダに何入れるか。。
ってのと命名規則のさわりだけはOKとした。
時間ないのでCakeについてはここまで。
次はBancha。
0 件のコメント:
コメントを投稿