[CakePHP]料理の前のメモ
■CakePHPの基本要素
・コンポーネント(Components)
・ビヘイビア(Behaviors)
・ヘルパー(Helpers)
■よくあるCakeリクエスト
リンクをクリック。
⇒ Webサーバへのリクエスト。
⇒ Routerがパラメータを取り出す。
⇒ コントローラのアクションにマップされる。
⇒ コントローラがモデルを使用。
⇒ 該当するモデルのコールバック、ビヘイビア、データソースが動作。
⇒ データがモデルからコントローラへ渡される。
⇒ コントローラがコンポーネントを使用。
⇒ データがコントローラからビューに渡される。
⇒ ビューがレイアウトに表示される。
■CakePHPのフォルダ構造
・app フォルダ - 自分の書いたアプリを入れる。
・cake フォルダ - CakePHPのコードが入っている。
・vendors フォルダ - 外部作成の PHP ライブラリを置く。
■ファイルとクラス名の規約
・ファイル名はアンダースコア記法(underscored)
・クラス名にはキャメル記法(CamelCased)
■モデルとデータベースの規約
・モデルに対応するテーブル名は、複数形でアンダースコア記法
・フィールド名はアンダースコア記法
・外部キーの名前は、関連するモデルの(単数形の)名前に _id を付ける。
・モデル間の関係で使用される join テーブルは、モデル名をアルファベット順。
・モデルの相互に作用する全てのテーブルには、単一フィールドのプライマリーキーが必要。
■コントローラの規約
・コントローラのクラス名は最後に Controller が付く。
・必ず index() というメソッドが必要。
・先頭にアンダースコア(_)の付いたコントローラメソッドは、Web上からは非表示。
■ビューの規約
・ビューのテンプレートファイルの名前は、それを表示するコントローラの関数に合わせる。
・基本パターン ⇒ /app/views/コントローラ名/関数名.ctp
■ファイルの配置
・テーブル ⇒ 「people」
・モデル「Person」 ⇒ /app/models/person.php
・コントローラ「PeopleController」 ⇒ /app/controllers/people_controller.php
・ビューのテンプレート「index」 ⇒ /app/views/people/index.ctp
■出てきた用語
・コントローラ
・ビュー
・モデル
・アクション
・レイアウト(layout)
・エレメント(element)
・データソース(DataSource)
・プラグイン(plugin)
■CakePHP
■The Cookbook へようこそCakePHPの料理本(マニュアル)
■CakePHPフォーラム
■CakePHP - Wikipedia
■CakePHPで高速Webアプリ開発
・コンポーネント(Components)
・ビヘイビア(Behaviors)
・ヘルパー(Helpers)
■よくあるCakeリクエスト
リンクをクリック。
⇒ Webサーバへのリクエスト。
⇒ Routerがパラメータを取り出す。
⇒ コントローラのアクションにマップされる。
⇒ コントローラがモデルを使用。
⇒ 該当するモデルのコールバック、ビヘイビア、データソースが動作。
⇒ データがモデルからコントローラへ渡される。
⇒ コントローラがコンポーネントを使用。
⇒ データがコントローラからビューに渡される。
⇒ ビューがレイアウトに表示される。
■CakePHPのフォルダ構造
・app フォルダ - 自分の書いたアプリを入れる。
・cake フォルダ - CakePHPのコードが入っている。
・vendors フォルダ - 外部作成の PHP ライブラリを置く。
■ファイルとクラス名の規約
・ファイル名はアンダースコア記法(underscored)
・クラス名にはキャメル記法(CamelCased)
■モデルとデータベースの規約
・モデルに対応するテーブル名は、複数形でアンダースコア記法
・フィールド名はアンダースコア記法
・外部キーの名前は、関連するモデルの(単数形の)名前に _id を付ける。
・モデル間の関係で使用される join テーブルは、モデル名をアルファベット順。
・モデルの相互に作用する全てのテーブルには、単一フィールドのプライマリーキーが必要。
■コントローラの規約
・コントローラのクラス名は最後に Controller が付く。
・必ず index() というメソッドが必要。
・先頭にアンダースコア(_)の付いたコントローラメソッドは、Web上からは非表示。
■ビューの規約
・ビューのテンプレートファイルの名前は、それを表示するコントローラの関数に合わせる。
・基本パターン ⇒ /app/views/コントローラ名/関数名.ctp
■ファイルの配置
・テーブル ⇒ 「people」
・モデル「Person」 ⇒ /app/models/person.php
・コントローラ「PeopleController」 ⇒ /app/controllers/people_controller.php
・ビューのテンプレート「index」 ⇒ /app/views/people/index.ctp
■出てきた用語
・コントローラ
・ビュー
・モデル
・アクション
・レイアウト(layout)
・エレメント(element)
・データソース(DataSource)
・プラグイン(plugin)
■CakePHP
■The Cookbook へようこそCakePHPの料理本(マニュアル)
■CakePHPフォーラム
■CakePHP - Wikipedia
■CakePHPで高速Webアプリ開発