Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Здравствуйте, начал постигать Laravel, разрабатываю свой первый проект и встал перед одним вопросом. ответ на который пока не могу найти самостоятельно и надеюсь на подсказку:)
Использую миграции, замечательная вещь, но как быть с миграциями в живой базе? Сейчас новые таблицы отлично создаются, но если я надумаю добавить дополнительное поле в таблицу и перезапущу миграцию, говорит что нечего обновлять (nothing to migrate).
Есть конечно вариант использовать
php artisan migrate:refresh
но так он сначала запускает rollback и следовательно грохает все данные в базе. Пока работаю с демо данными это не проблема, но как быть если понадобиться добавить поля в уже работающую базу с реальными данными?
В самом файле миграции использую Schema::table так по идее должна обновляться база.
Не в сети
когда добавляешь новые миграции с php artisan make:migration они нормально отрабатывают при запуске migrate. естественно если ты вносишь изменения в уже отработавшие миграции, то чтобы их перезапустить, их сначала надо откатить. естественно откат удаляет данные. обычно рефреш используется на этапе разработки (с параметром --seed - чтобы отрабатывали и сидеры тоже, заполняли начальные данные в базу), а когда сайт запущен - добавляются отдельные миграции, добавляющие поля, индексы и т.д.
Не в сети
ясно, приходило в голову про дополнительные миграции, но думал может есть и другой путь
спасибо за ответ
Не в сети
Страницы 1