データベーステーブルを参照しないページを作る

CakePHPでは、コントローラとデータベーステーブルは対となる想定になっています。
しかしサイトの構成によっては、データベーステーブルによらないページがあります。

対となるテーブルがない場合は次のようなエラーが出ます。

Missing Database Table
Error: Database table 【テーブル名】 for model 【モデル名】 was not found.

このようにテーブルを参照しない(モデルを使用しない)コントローラを作るには、コントローラクラスの中に次のように『テーブルを使用しない』と指定します。

var $useTable = false;

通常はテーブルを参照するコントローラで、参照しないコントローラのみに$useTable = false;を指定することもできますが、 テーブルを参照しないページのほうが多ければ、基本を『テーブルを使用しない』としたほうが楽です。

modelに関する全体的な設定は
/app/app_model.php
に指定します。
全体的に『テーブルを使用しない』とするには次のように書きます。

<?php
class AppModel extends Model {
    var $useTable = false;
}

この場合、テーブル(model)を使用するコントローラのみ$useTable = true;を指定します。

関連記事

スポンサーリンク

Tooltips ツールチップ

ホームページ製作・web系アプリ系の製作案件募集中です。

上に戻る