libro
www.tuyano.com
初心者のためのCakePHP 1.3 プログラミング入門

コントローラーとビュー (3/7)

作成:2010-02-17 13:37
更新:2010-05-10 19:01

■ビューを作る

しかし、アクションメソッドの中に、表示する内容をすべてechoで書く、というのは、やり方としては最低です。やはり、HTMLを使って、誰でもわかる形でページデザインされていないといけません。

ビューは、「views」フォルダの中に作成します。この中に、各コントローラーごとに、コントローラ-名のフォルダを用意し、その中に各アクションごとのテンプレートファイルを配置します。すると、特定のコントローラーの特定のアクションが呼び出されたとき、「View」内からそのコントローラー名のフォルダを探し、その中から指定したアクション名のテンプレートファイルを読み込んで表示する、というわけです。

では、やってみましょう。「views」内に、「sample」というコントローラー名のフォルダを作成してください。そしてその中に、「index.ctp」というファイルを作成します。これがビューのテンプレートファイルです。テンプレートファイルは、このように「ctp」という拡張子をつけて記述します。

ファイルに記述するソースコードは、下に掲載しているようになります。たった3行の単純なものですね。見ればわかるように、<html>タグとか<head>タグといったものはありません。<body>に表示する内容だけを記述すればOKなのです。

それから、テンプレートを使ってページを表示するようにコントローラーを修正しましょう。下に掲載したように、コントローラーを書き換えてください。これで完成です。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

●プログラム・リスト●

※index.ctpのテンプレート

<h1><?php echo $title_text; ?></h1>
<br />
<p><?php echo $content; ?></p>


※SampleControllerの修正

<?php

class SampleController extends AppController {
	
	public $name = "Sample";
	public $uses = null;
	public $autoRender = true;
	
	function index(){
		$this->set("title_text","Sample Page");
		$this->set("content","これは、ビューを使った表示です。");
	}
}
※関連コンテンツ

「初心者のためのCakePHP 1.3 プログラミング入門」に戻る