コントローラーを使おう! (2/5)
作成:2011-11-02 08:00
更新:2011-11-02 08:00
更新:2011-11-02 08:00
■コントローラーとアクション
このコントローラーというものは、Webアプリケーションの中で一体どういうものを作ることになるのでしょうか。コントローラーは、「いくつかのアクションをひとまとめにして管理し処理するもの」です。
「アクション」というのは、これはとりあえず「Webページ」のことだ、と考えておきましょう。つまり、コントローラーとは、複数のページをアクションという形でまとめて管理する働きをするものなのです。
例えば、簡単なデータを管理するWebアプリを考えてみましょう。データを追加したり削除したり、編集したり、検索をしたりといったさまざまなページを用意することになるでしょう。コントローラーは、これらをひとまとめにして管理します。つまり「〇〇データ」というようなコントローラーを作成し、そこにそれぞれの操作に対応するアクションを作っていけばいいわけです。
CakePHPでは、コントローラーのアクションは、アドレスで明確に指定することができます。これらは、以下のようにアドレスが割り当てられるのです。
では、コントローラーはどのような形で作られるのか。これは「クラス」として定義されるのです。コントローラーのクラスは、以下のような形で記述されます。
クラスには、アクションがそれぞれメソッドとして用意されます。一般に「アクションメソッド」と呼ばれます(そのまんまやん……)。このアクションメソッドを用意するだけで、そのアクションが使えるようになります。他に設定などは不要です。
CakePHPでページを用意するということは、まずこの「アクションメソッドを定義する」ことだ、と考えてください。
「アクション」というのは、これはとりあえず「Webページ」のことだ、と考えておきましょう。つまり、コントローラーとは、複数のページをアクションという形でまとめて管理する働きをするものなのです。
例えば、簡単なデータを管理するWebアプリを考えてみましょう。データを追加したり削除したり、編集したり、検索をしたりといったさまざまなページを用意することになるでしょう。コントローラーは、これらをひとまとめにして管理します。つまり「〇〇データ」というようなコントローラーを作成し、そこにそれぞれの操作に対応するアクションを作っていけばいいわけです。
CakePHPでは、コントローラーのアクションは、アドレスで明確に指定することができます。これらは、以下のようにアドレスが割り当てられるのです。
http://ドメイン/CakePHPのディレクトリ/アプリケーション/アクション
■コントローラークラスの定義
では、コントローラーはどのような形で作られるのか。これは「クラス」として定義されるのです。コントローラーのクラスは、以下のような形で記述されます。
<?php最初にある「App::uses」というのは、CakePHPに用意されているライブラリをロードするためのものです。CakePHPではさまざまな機能が用意されていますが、それらを利用する場合にこれを使います。書き方は以下の通りです。
App::uses('AppController', 'Controller');
class コントローラー名 extends AppController {
public function アクション名() {
……ここに処理を書く……
}
}
App::uses( クラス名 , パッケージ名 );コントローラークラスは、Controllerパッケージにある「AppController」というクラスを継承して作成します。このため、まず最初にApp:usesでこのクラスを使えるようにしておきます。
クラスには、アクションがそれぞれメソッドとして用意されます。一般に「アクションメソッド」と呼ばれます(そのまんまやん……)。このアクションメソッドを用意するだけで、そのアクションが使えるようになります。他に設定などは不要です。
CakePHPでページを用意するということは、まずこの「アクションメソッドを定義する」ことだ、と考えてください。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
※関連コンテンツ
「初心者のためのCakePHP2 プログラミング入門」に戻る