CakePHP: Manual/Developing/Configuration/Database

Настройка базы данных

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'      => '');

Пример конфигурации базы данных

Если в модели не объявлена переменная $useDbConfig с названием используемых параметров подключения, то CakePHP будет использовать настройки определенные в массиве с названием $default. Например, если моему приложению требуется подключиться к еще одной базе данных, помимо основной, то я просто могу создать еще один массив с настройками (например $legacy) аналогичный по структуре массиву по умолчанию и в модели объявить, что хочу работать с другой базой данных так: var $useDbConfig = 'legacy';.

Замените пары ключ/значение в массиве настроек на ваши.

Ключ
Значение
driverИмя драйвера базы данных для этой конфигурации.

Например: mysql, postgres, sqlite, pear-drivername, adodb-drivername, mssql, oracle или odbc.

persistentБудет ли использоваться постоянное соединение с базой данных
hostИмя сервера, на котором расположена база данных (или его IP)
loginЛогин для доступа к базе данных
passwordПароль доступа к базе данных
databaseИмя базы данных для текущего соединения
prefix (опционально)Cake будет счиать что все таблицы относящиеся к нему имеют этот префикс. Если префикс не используется — оставьте пустую строку.
port (опционально)TCP порт или сокет Unix, который используется для доступа к базе данных.
encodingУказывает в какой кодировке отправлять запросы к базе данных
schemaИспользуется в базе данных PostgreSQL, указывает на то какая схема используется

Заметим, что параметр prefix актуален для таблиц, а не Моделей. Например, если вы создаете таблицу для объединения двух ваших моделей Apple и Flavor, то таблица должна называться prefix_apples_flavors (не prefix_apples_prefix_flavors), а в настройках соединения указан ключ prefix со значением 'prefix_'.

Сейчас вы можете взглянуть в раздел Соглашения, который недавно прочитали. Правильное название для вашей таблицы (а так же некоторых колонок) облегчит разработку и поможет вам избежать лишних настроек.

Настройка ядра >>