Yii миграции для изменения таблиц

В своем веб-приложении я внес некоторые изменения в базу данных mysql и хочу отразить те же изменения в своем веб-приложении. Я знаю, что могу использовать миграцию базы данных, но где мне запустить команду для миграции? должен ли я создать программу в каталоге /migrations для изменения таблицы, если да, то где я должен запустить команду «yiic migrate», чтобы отразить изменения? как мне это решить?


person user2492854    schedule 11.02.2014    source источник
comment
вы запускаете его из того места, где находится yiic.   -  person Pentium10    schedule 11.02.2014


Ответы (1)


Вам понадобится терминал или интерфейс командной строки. Там вы должны ввести (например):

php /Users/Name/Sites/SiteDir/public_html/protected yiic migrate create table_changes

Это создаст новую пустую миграцию под названием «table_changes» в папке protected/migrations. Если вы столкнулись с какими-либо ошибками, убедитесь, что файл конфигурации консоли, который использует yiic.php, имеет правильные настройки БД для вашей среды и включает ссылку на класс миграции:

'commandMap'=>array(
    'migrate'=>array(
        'class'=>'system.cli.commands.MigrateCommand',
        'migrationPath'=>'application.migrations',
        'migrationTable'=>'yii_migration',
        'connectionID'=>'db',
    ),
),

Я бы порекомендовал сначала внести все изменения в БД с помощью миграции - таким образом вы «съедаете свою собачью еду» и убедитесь, что она работает.

Дополнительная информация о создании и запуске миграций Yii

person JamesG    schedule 11.02.2014