CakePHPではまったこと①(レイアウトとsetAction)

CakePHPでの開発に、ものすごい勢いでいろんなことにつまづいているコスミーです。
とりあえず、少しずつメモしていきたいと。暴露していきたいと。

○setAction + layout
コントローラ内のメソッドで

$this->layout="hoge.thtml"

ってやれば、テンプレートを指定できる。
また、

$this->setAction('foo')

でコントローラ内のほかのメソッドに移行できる。
で、二つ同時にやるとどうなるかというと、


function hoge() {
    $this->layout = "login.thtml";
    $this->setAction('foo');
}

function foo() {
    // ここのレイアウトは・・・
}

上記のコードだと、直接fooが呼ばれた場合はレイアウトは”default.thtml”、hoge経由で呼ばれた場合は”login.thtml”。
まあ、当然といえば当然かもしれませんが。そういうわけで、上記のコードはきっとバグなのです。

以上

コスミー について

昔(?)はゲーム作ってました。 今もなんか作ろうとしています。
カテゴリー: PHP, フレームワーク パーマリンク

コメントを残す

メールアドレスが公開されることはありません。