@EvgMul

Как в yii1 выполнить конкретную миграцию?

Здравствуйте. Предположим, у меня есть 10 непримененных миграций. Мне требуется выполнить только одну из них, которая находится в середине списка. Подскажите, пожалуйста, какой командой это сделать?
Заранее благодарен всем отозвавшимся.
  • Вопрос задан
  • 20 просмотров
Решения вопроса 1
maksim92
@maksim92 Куратор тега Yii
Нашел решение — пометь вопрос ответом!
Миграции это версионирование базы данных.

Логически не может быть такого, что миграция в середине вам нужна, а перед ними нет. Так как перед ними могут быть зависимости для последующих.

Например, есть 6 миграций. Первые 3 создают таблицы. Следующие 3 добавляют в них новые поля. Если вы примените только последние 3, то у вас выйдет ошибка «такой таблицы нет в БД». Поэтому, взять и применить миграцию из середины нельзя и не имеет никакого смысла. Можно лишь привести БД к определенному состоянию. Подробнее есть в документации.

Однако, если вам очень нужно это сделать, то есть лайфхак. Удалите все миграции из папки, кроме тех, которые нужно применить и примените их. Затем верните в папку ранее удаленные миграции. Но так использовать не рекомендуется. Это костыль!
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
07 апр. 2020, в 19:10
2000 руб./за проект
07 апр. 2020, в 18:58
4000 руб./за проект
07 апр. 2020, в 17:15
45000 руб./за проект