CakePHP でモデル・ビュー・コントローラー間で値を渡す基本的な方法

コントローラーで以下のように書きます。第一引数には変数名を入力します。

1
2
$value = 'hoge';
$this->set('var', $value);

するとビューで以下のように出力することが可能です。

1
echo $var;

参考: コントローラからビューに渡す | CakePHP

モデルからコントローラーに値を渡す方法

実際にはモデルからコントローラーに値を渡すというよりは、コントローラーでモデルから値を取り出すと言う感じですね。CakePHP コントローラに処理を書かずにモデルにメソッドを追加しよう! | Sun Limited Mt. がとても分かりやすいのでそのまま引用します。

まずはモデルに以下のように処理して値を返す関数を記述します。

1
2
3
function findMostRecent($limit = 10) {
    return $this->findAll(array('Post.is_published' => true), null, array('Post.published DESC'), $limit);
}

するとコントローラーで以下のようにして値を受け取れますよ。

1
$this->Post->findMostRecent();

コメント

コメントは受け付けていません。