CakePHP

【CakePHP2.3】Controllerクラスの全プロパティまとめ。

自分用。

プロパティ(変数) デフォルト 説明
$autoLayout true 自動でレイアウトとビューを結合するか否か
$autoRender true 自動でビューをレンダリングするか否か
$cacheAction false ビューキャッシュを用いる場合に指定
$components array(‘Session’) コントローラー内で使用するコンポーネントを指定
$Components null コンポーネントを管理するクラスのインスタンス
$ext ‘.ctp’ ビューファイルの拡張子を指定
$helpers array() コントローラー内で使用するヘルパーを指定
$layoutPath null レイアウトファイルを格納するパス
$layout ‘default’ レイアウトとして使用するファイル名
$methods array() Controllerクラス以外に作成されたメソッドが格納される
$modelClass null コントローラー名に対応するモデル名が格納される
$modelKey null $modelClassに対応するキー名が格納される
$name null コントローラー名を指定
$passedArgs array() URLに含まれるパラメーターが格納される
$plugin null 指定されたプラグイン名が格納される
$request N/A CakeRequestクラスのインスタンス
$response N/A CakeResponseクラスのインスタンス
$scaffold false scaffold機能を使用するか否か
$uses true コントローラー内で使用するモデル名を指定
$validationErrors null バリデーションエラーメッセージが格納される
$view null 利用するビューのテンプレート名を設定
$View N/A ビュークラスのインスタンス
$viewClass ‘View’ ビュークラス名を指定する
$viewPath null ビューテンプレートを格納するパス
$viewVars array() set()関数で登録された値が格納される
$_eventManager null イベントマネージャークラスのインスタンス
$_mergeParent ‘AppController’ 親クラスと値をマージする際の、親クラス名
$_responseClass ‘CakeResponse’ レスポンス情報の格納されたクラスの名前

 

【CakePHP】EclipseにてModelクラスとViewクラスのメソッドを補完させる方法。

コントローラー内でModelクラス内のメソッドを補完させる方法と、ビューファイル(.ctp)内でViewクラスのメソッドを補完させる方法。

まずコントローラーにて。

/**
 * @property Item $Item
 */
class ExamplesController extends AppController {

}

コントローラークラスの上部にコメントアウトで@propertyを記述してやることで、Eclipaseがモデル内のメソッドを自動で補完してくれるようになる。複数のモデルを一括で指定したい場合はコメントアウト内に@propertyを列挙してあげればよい。
※コメントアウトをクラス内に記述してしまうと全く動作しないので注意。

/**
 * @property Item $Item
 * @property Hoge $Hoge
 * @property Fuga $Fuga
 * @property Piyo $Piyo
 */
class ExamplesController extends AppController {

}

次にビュー。

<?php /* @var $this View*/ ?>

「.ctp」内の先頭行に上記1行を記述してやればよい。
※予め「.ctp」をPHPファイルとしてEclipseに認識させておかないと補完されないので注意。

たったこれだけでCakePHPでの開発が数倍快適になること間違いなし。