Проблема с командой миграции Yii

Я выполнил эту пошаговую инструкцию для создания таблицу в моей базе данных с помощью команды migrate, но мне было интересно, как она завершается на последнем шаге. после запуска команды "yiic migrate" я получаю следующее сообщение:

Yii Migration Tool v1.0 (based on Yii v1.1.13)

exception 'CDbException' with message 'CDbConnection.connectionString cannot be
empty.' in D:\wamp\www\news\framework\db\CDbConnection.php:369
Stack trace:
#0 D:\wamp\www\news\framework\db\CDbConnection.php(330): CDbConnection->open()
#1 D:\wamp\www\news\framework\db\CDbConnection.php(308): CDbConnection->setActiv
e(true)
#2 D:\wamp\www\news\framework\base\CModule.php(387): CDbConnection->init()
#3 D:\wamp\www\news\framework\cli\commands\MigrateCommand.php(442): CModule->get
Component('db')
#4 D:\wamp\www\news\framework\cli\commands\MigrateCommand.php(451): MigrateComma
nd->getDbConnection()
#5 D:\wamp\www\news\framework\cli\commands\MigrateCommand.php(482): MigrateComma
nd->getMigrationHistory(-1)
#6 D:\wamp\www\news\framework\cli\commands\MigrateCommand.php(84): MigrateComman
d->getNewMigrations()
#7 [internal function]: MigrateCommand->actionUp(Array)
#8 D:\wamp\www\news\framework\console\CConsoleCommand.php(172): ReflectionMethod
->invokeArgs(Object(MigrateCommand), Array)
#9 D:\wamp\www\news\framework\console\CConsoleCommandRunner.php(67): CConsoleCom
mand->run(Array)
#10 D:\wamp\www\news\framework\console\CConsoleApplication.php(91): CConsoleComm
andRunner->run(Array)
#11 D:\wamp\www\news\framework\base\CApplication.php(169): CConsoleApplication->
processRequest()
#12 D:\wamp\www\news\framework\yiic.php(33): CApplication->run()
#13 D:\wamp\www\news\framework\yiic(14): require_once('D:\wamp\www\new...')
#14 {main}

Я не знаю, какую команду я должен запустить после этого и как завершить процесс миграции!

У кого-нибудь есть решение по этому вопросу? (у меня тоже виндовс 7)


person Hamid Ghorashi    schedule 21.08.2013    source источник


Ответы (2)


Внутри config/console.php добавить конфигурацию базы данных

'components' => array(
  'db'=> array(
    'connectionString' => '',
  'username' => '',
  'password' => '',
  )
)   

с соответствующими данными базы данных

person Neophile    schedule 21.08.2013
comment
Это сработало для меня. Убедитесь, что у @neophile такая же конфигурация в config/console.php. Я имею в виду, что вам нужно иметь элемент db в массиве компонентов в console.php. - person ZJ Lyu; 11.12.2013

Кажется, вы пропустили блок конфигурации db в файле config/console.php.

person Michael Härtl    schedule 21.08.2013
comment
Я уже установил конфигурацию базы данных как в main.php, так и в console.php. - person Hamid Ghorashi; 21.08.2013
comment
Я скопировал папку framework из основной папки Yii, которую скачал с официального сайта, а затем отредактировал первую строку кода в index.php следующим образом: $yii=dirname(FILE).'/framework /yii.php'; - person Hamid Ghorashi; 21.08.2013