BETA

CakePHP2系のプロパティまとめ

投稿日:2018-12-04
最終更新:2018-12-26

CakePHP2系のプロパティ関係、個人的な覚え書きメモ。

Controller

使用するモデルの指定

デフォルトのモデルしか使わない場合設定しなくてもいいが、デフォルト以外のモデルを利用する際は、デフォルトのモデル名も必ず記述する必要がある。

$users = ['モデル名', 'モデル名'];  

使用するコンポーネントの指定

$components = ['コンポーネント名','コンポーネント名'];  

使用するコンポーネントの指定

$helpers = ['ヘルパー名','ヘルパー名'];  

$uses、$components、$helpersはそれぞれAppControllerの定義とマージされる。

使用するレイアウトの指定

$this->layout = 'レイアウト名';  

ちなみにajaxなどでレイアウトを使用しない場合は以下のように記述すると良い。

$this->autoLayout = false;  

ビューを使わない場合

$this->autoRender = false;  

Model

モデル名の指定

public $name = 'モデル名';  

使用するテーブルの指定

public $useTable = 'テーブル名';  

規約以外のテーブル名を使用する場合に設定。テーブルを使わないモデルに関しては false を設定する。

主キーにid以外を設定

public $primaryKey ='hoge_id';  

エイリアスの取得

$id = $data[$this->alias]['id'];  

SQLのエイリアスを取得できる。モデル名を意識せず使用したい場所(例:AppModel)で使用すると良い。

Controller/View

現在位置の取得

例)/Users/login の場合

  • コントローラー名:$this->name
    • Users
  • アクション名:$this->action
    • login
  • Webroot:$this->webroot
    • /
  • 現在のURL:$this->here
    • /Users/login

エレメントの呼び出し

echo $this->element('element_file');  

element_fileは View/Elements 以下に格納。フォルダ下に入れている場合は folder_name/element_file でOK。

ちなみに変数を渡す場合は以下のようになる。

$arr = ['a', 'b', 'c'];  
echo $this->element('element_file', ['arr'=>$arr]);  

(Controlle->Viewに渡す際の $this->set('arr'=>$arr) の要領で覚えると良い◎)

技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

web中心のメモ置き場。プログラミングからデザインまで。

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう
目次をみる
技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
or 外部アカウントではじめる
10秒で技術ブログが作れます!