Yii empty connectionString, но строка не пустая. Несколько баз данных

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Закрыто
newbie67
Сообщения: 42
Зарегистрирован: 2014.04.28, 22:28

Yii empty connectionString, но строка не пустая. Несколько баз данных

Сообщение newbie67 »

Всем привет. Стоит задача перенести базу данных с одного движка на другой. На чистом SQL сделать это для меня слишком тяжело.

Решил использовать yii.
Есть 3 базы:
temp, tempFrom, tempTo

В конфиге есть 3 подключения:

Код: Выделить всё

        'db1'=>array(
            'class'=>'system.db.CDbConnection',
            'connectionString' => 'mysql:host=localhost;dbname=temp',
            'username' => 'root',
            'password' => '',
            'charset' => 'utf8',
        );
        'db2'=>array(
            'class'=>'system.db.CDbConnection',
            'connectionString' => 'mysql:host=localhost;dbname=tempFrom',
            'username' => 'root',
            'password' => '',
            'charset' => 'utf8',
        );
        'db3'=>array(
            'class'=>'system.db.CDbConnection',
            'connectionString' => 'mysql:host=localhost;dbname=tempTo',
            'username' => 'root',
            'password' => '',
            'charset' => 'utf8',
        ); 
Вызов в контроллере работает на ура:

Код: Выделить всё

        $db_temp = Yii::app()->db1;
        $db_tempFrom = Yii::app()->db2;
        $db_tempTo = Yii::app()->db3;

        $result = $db_temp->createCommand("SELECT * from cats")->queryAll();
        
        echo '<pre>';
        print_r($result);
 
А вот при попытке зайти в Gii я вижу ошибку
CDbConnection.connectionString cannot be empty.
Что я делаю не так?
andrei.obuhovski
Сообщения: 610
Зарегистрирован: 2015.07.16, 10:50

Re: Yii empty connectionString, но строка не пустая. Несколько баз данных

Сообщение andrei.obuhovski »

напиши вместо db1 просто db
newbie67
Сообщения: 42
Зарегистрирован: 2014.04.28, 22:28

Re: Yii empty connectionString, но строка не пустая. Несколько баз данных

Сообщение newbie67 »

Да, спасибо. Уже догодался, всё так! На время генерации модели для каждой из баз данных временно переименовываю её из "db1"(2,3) в просто "db", а после генерации модели уже возвращаю параметры на место и вношу нужные правки
Закрыто