Laravel Migration добавить поле после данных в таблице?

У меня есть миграция под названием CreateItemsTable ; Я запустил это, у меня есть элементы в этой таблице, теперь мне нужно добавить новое поле в таблицу. Я не могу просто добавить поле в файл миграции и выполнить migrate:refresh потому что мне нужны данные, которые в нем.

Должен ли я сделать еще одну миграцию для добавления поля? Это похоже на беспорядок, в то время как я тестирую вещи в разработке, я могу сильно изменить поля. Я не уверен, что миграция чище, чем просто PhpMyAdmin … или, может быть, я их не понимаю?

Да, каждый раз, когда вам нужно каким-то образом изменить таблицу, вы создадите для нее новую миграцию. В этом весь смысл миграции. Когда вы работаете в совместной среде, и вы удаляете некоторые изменения из удаленного репозитория, одна из вещей, которую вы должны делать (при работе с базой данных), – это запускать любые миграции, которые могли бы создать другие разработчики. Это позволяет синхронизировать ваши базы данных.

Конечно, вы можете иногда добавлять и добавлять столбцы, но это не имеет большого значения.

Когда вы создаете таблицу в первый раз, вы, вероятно, используете Schema::create() . Все последующие миграции для этой таблицы должны использовать Scheme::table() . Он принимает те же параметры, за исключением того, что сначала не пытается создать таблицу.