CakePHP3を触ってみました 〜レイアウトチェーンジ〜

この記事はだいぶ前に書かれたものなので情報が古いかもしれません
そういや白い力もちって食べたことないな

この記事を三行にまとめると

今日は全然たいした話じゃないです
緑のたぬきより赤いきつねの方が好きです
マルちゃんのアイドルグループなんていたんだね
今日は全然たいした話じゃないです。

特に何も設定しない場合、画面を開いたとき、テンプレートの大枠は、Layoutsの下にあるdefault.ctpが読み込まれます。

これを変えたい場合はどうするかってお話。

CakePHP2の頃は、こんな感じでした。

class SampleController extends AppController {
  public $layout = 'soba';

  public function index() {
    $this->layout = 'udon';
  }
}

「$layout」というメンバ変数で書き換えることができました。

でもこれと同じことをCakePHP3でやると、エラーになります。

3の場合は、こう。

class SampleController extends AppController {
  public function index() {
    $this->viewBuilder()->layout('udon');
  }
}

これで、Layoutsフォルダの下にあるudon.ctpが読み込まれます。



今日は以上っす。

ちなみに僕はうどんよりそば派なんですけど、マルちゃんに関しては、緑のたぬきより赤いきつねの方が好きです。

ってか、マルちゃんのアイドルグループなんていたんだね……初めて知ったよ。



その他のCakePHP3を触ってみましたの記事はこちら
まとめという名の箸休め
 もしかしたら何か関連しているかも? 
 質問や感想などお気軽にコメントしてください