未分類

CakePHP の研究 (3)

覚えるのは大変だけど次の3種類に分類されるはず。

  • 大キャメル(頭文字が大文字のキャメル記法)※キャメル記法の大部分がこちらの記法。
  • 小キャメル(頭文字が小文字のキャメル記法)※は変数名とメソッドのみに限定。
  • アンスコ(すべて小文字のアンダースコア記法)※大文字はない。

また、基本ルールも抑えておく。

  • モデル名だけは単数形。それ以外は複数系。
  • クラス名はキャメル。それ以外はアンスコ。

コントローラ

  • クラス名  :大キャメル複数+Contoller
  • ファイル名 :大キャメル(複+Contoller+.php
  • アクション名:アンスコ (index, view, add, edit, delete)
  • コントローラ内の独自メソッド:_ から始めること。(アクション名として自動認識させないため)

コンポーネント

  • クラス名:コンポーネント名+Component
  • クラス名    :コンポーネント+Conponent
  • ファイル名   :コンポーネントクラス名+.php
  • コンポーネント:ファイル名:クラス名+.php
  • コンポーネント名:キャメルケース
  • コンポーネント名:大文字で始まるキャメル記法(単数形

モデル

  • クラス名 :大キャメル単数
  • ファイル名:モデルのクラス名+.php
  • デフォルトモデル:コントローラのクラス名から Controller を取り除き、単数形にしたもの。
  • 関連モデル:2つのモデル名を連結(アルファベット順):大キャメル複数+大キャメル単数

ビヘイビア

  • クラス名:大文字で始まるキャメル記法

テーブル

  • テーブル名:アンスコ複数
  • 項目名  :アンスコ単数
  • 主キー名 :id(PK; Primary Key)
  • 外部キー名:XXXXX_id(FK; Foreign Key)
    ※XXXXX はモデル名:小文字のアンダースコア記法(単数形)
  • 項目名  :name, title → 自動的に表示項目 (DisplayField) と認識。
  • 項目名  :created, updated, modified → 作成日時、更新日時が自動格納

ビューテンプレート

  • フォルダ名:大キャメル(複) ※コントローラ名と同一。
  • ファイル名:アンスコ (index.ctp, view.ctp, add.ctp, edit.ctp)

変数名・メソッド名

  • メンバ変数     :キャメル
  • ローカル変数名   :小キャメル
  • メソッド名     :小キャメル
  • クラスのインスタンス:大キャメル
  • 定数        :全大アンスコ

その他

  • URI : 小文字のスネークケース

-未分類