カテゴリー
コンピューター

CakePHP2 のアクション内でビューのレンダーとレイアウトのオンオフが可能なんですねっ!

CakePHP でビューの基本 $autoRender と $autoLayout について勉強するよ♪だからコントローラーとビューだけでサンプル作るんです!モデルは、お休みっ! | oki2a24 の続きとなります。

まとめ

  • $autoRender と $autoLayout は宣言しなくてもよい。
  • $autoRender と $autoLayout のデフォルト値は true
  • $autoRender と $autoLayout は関数内で設定し、アクションごとに切り替え可能。

前提

  • CakePHP 2.1.3 導入済み。
  • ドキュメントルート/cake/sample/(ここにCakePHP が入ってます。app ディレクトリとか、.travis.yml ファイルとか。)

ソース

cake/sample/app/Controller/HaskapController.php

<?php

class HaskapController extends AppController {

	// コントローラー名
	public $name = 'Haskap';
	// モデルを指定しない
	public $uses = null;
	// ビューの使用有無の設定
	//public $autoRender;
	// レイアウトの使用有無の設定
	//public $autoLayout;

	public function index() {
		echo "こんにちはっ!ハスカップだよっ!";
		$this->autoRender = true;
		$this->autoLayout = true;
	}

	public function other() {
		echo "こんにちはっ!other関数だよっ!";
		$this->autoRender = true;
		$this->autoLayout = false;
	}

}

?>

cake/sample/app/View/Haskap/index.ctp
cake/sample/app/View/Haskap/other.ctp
ビューの内容は何でもよいので割愛します。

http://localhost/cake/sample/haskap/ にアクセスすると

CakePHP- the rapid development php framework- Haskap.jpg

http://localhost/cake/sample/haskap/other  にアクセスすると

localhost-cake-sample-haskap-other.jpg

「CakePHP2 のアクション内でビューのレンダーとレイアウトのオンオフが可能なんですねっ!」への1件の返信

コメントを残す