2016-01-05 4 views
2

Возможно ли откат конкретной миграции в Ларавеле?Откат определенной миграции?

Например:

Если я четыре миграции, как M1, M2, M3 и M4, а потом я решил добавить несколько полей в М2. Могу ли я полностью вернуться к M2? или просто просто редактировать существующий файл миграции M2 напрямую?

+3

Миграция 5 должна содержать новые столбцы – Farkie

+0

Я согласен с @Farkie, лучше создать новую миграцию, которая изменит таблицу, созданную вами на M2, добавив новые поля –

ответ

2

Лучшей практикой будет комментарий @ Farkie, создайте новую миграцию. Но если вы действительно хотите взломать, то, как перенос отката Laravel происходит так: на таблицах миграции есть столбец с именем «batch», поэтому, когда выполняется откат, все записи с самым большим номером партии будут отменены, а записи отката миграции будут удалены из таблицы миграции.

Способ взломать может быть:

Если таблица миграции, как:

migration | batch 
=========================== 
M1    | 1 
M2    | 1 
M3    | 1 
M4    | 1 

Редактировать таблицу, так это выглядит, как

migration | batch 
=========================== 
M1    | 1 
M2    | 2 
M3    | 2 
M4    | 2 

Так при откате будет откатить M2 , M3 и M4, внесите изменения и снова перенастройтесь

Смежные вопросы