CakePHP そういえば、トップページのコントローラーは?

「そういえば、トップページのコントローラーは?」
CakePHPの勉強をしている時に、ふと思った疑問。
CakePHPのデフォルトのトップページには、
ビューは、『app⁄views⁄pages⁄home.ctp』
レイアウトを変更したいなら『app⁄views⁄layouts⁄default.ctp』
を作成と書いてあるが、肝心のコントローラーのことは書いていない。

CakePHPトップページ用ビューの作成場所

とりあえず、index_controller.phpを作成してみる。
結果は、失敗。
home_controller.phpとかを作成してみても失敗。
というわけで、ちゃんと調べてみる事に。


CakePHPのルートは、
app⁄config⁄routes.php
(CakePHP1.3 日本語マニュアル  Routes の定義)
に記述されているので、routes.phpを見てみると・・・

/**
 * Here, we are connecting '/' (base path) to controller called 'Pages',
 * its action called 'display', and we pass a param to select the view file
 * to use (in this case, /app/views/pages/home.ctp)...
 */
Router::connect('/', array('controller' => 'pages', 'action' => 'display', 'home'));
/**
 * ...and connect the rest of 'Pages' controller's urls.
 */
Router::connect('/pages/*', array('controller' => 'pages', 'action' => 'display'));

と、書かれていました。
pagesコントローラーのdisplayアクションをコールしてるみたいですね。
ということは、pages_controller.phpがトップページのコントローラー。
さっそくコントローラー「pages_controller」とビュー「display.ctp」を作成してみると、今度は無事に成功しました。

いや~。よかったよかった^^