データベースの設定
CakePHPは、データベースの詳細設定ファイルをapp/config/database.phpに探します。データベースの設定例のファイルはapp/config/database.php.defaultにあります。設定が終わると次のようになります。
var $default = array('driver' => 'mysql',
'persistent' => false,
'host' => 'localhost',
'login' => 'cakephpuser',
'password' => 'c4k3roxx!',
'database' => 'my_cakephp_project',
'prefix' => '');
var $default = array('driver' => 'mysql','persistent' => false,'host' => 'localhost','login' => 'cakephpuser','password' => 'c4k3roxx!','database' => 'my_cakephp_project','prefix' => '');
$default接続配列は、モデル内で$useDbConfigの値を変更して別な接続を指定しない限り使用されます。例えば、アプリケーションがデフォルトのデータベースに加えて、既存(legacy)の追加データベースも使用しなければいけない、としましょう。$default配列と同形式で$legacyデータベース接続用の配列を作成します。それから、該当するモデルの中でvar $useDbConfig = ‘legacy’とすることで、それを使えるようになります。
必要に合わせて、設定配列の中に、キー/値のペアを書き込んでください。
| キー | 値 |
|---|---|
| driver | この設定用配列は、データベースのドライバ名を入力する場所です。例えば、mysql, postgres, sqlite, pear-drivername, adodb-drivername, mssql, oracle, odbc などです。 |
| persistent | 持続的接続(persistent connection)を使うかどうか設定します。 |
| host | データベースサーバのホスト名。(またはIPアドレス) |
| login | アカウントユーザ名 |
| password | アカウントのパスワード。 |
| database | この接続が利用するデータベース名。 |
| prefix (オプション) | データベース内のすべてのテーブルの頭に付ける接頭辞(prefix)です。もしテーブルに接頭辞が付いていないのであれば、指定しないでください。 |
| port (オプション) | サーバに接続するためのTCPポート、またはUnix socket。 |
| encoding | サーバにSQLステートメントを送信する際に使用するキャラクターセット。(訳注:MySQLで日本語を使うには、"utf8","ujis","sjis"などを設定します。) |
| schema | PostgreSQLデータベースの設定時に、どのスキーマを使うかを指定します。 |
prefixの設定は、モデルではなく、テーブルに対するものだということを覚えておきましょう。例えば、AppleモデルとFlavorモデルのjoinテーブルを作成する場合、prefix_apples_flavorsという名前になります。(prefix_apples_prefix_flavorsではありません。)そして、prefixの設定は、'prefix_'となります。
この時点で、このマニュアルの付録部分の一覧にある、CakePHPの規約について少し読むのもよいかもしれません。テーブル(そして幾つかのフィールド名)の正しい命名方法を知っておくと、幾つかの機能をすぐに使えるようになり、設定する必要がなくなります。

login to add a comment