Добавить новый столбец в таблицу - PullRequest
0 голосов
/ 12 апреля 2019

Я все еще новичок как разработчик и пытаюсь изменить таблицу пользователей, если бы я добавил новый столбец "user_type" из предыдущей таблицы.

Мой вопрос: могу ли я сделать это или я должен сделать php artisan make: миграция add_user_type_users ?

Так что, если я могу изменить основную таблицу без использования add_user_type_users,Как мне перенести его в Laravel Forge, прежде чем я смогу увидеть изменения.Потому что, когда я фиксирую изменение в кузнице, он не добавляет мой новый столбец user_type. enter image description here

НОВАЯ ИНФОРМАЦИЯ

Как я фиксирую изменения вживая база данных?Я использую Laravel Forge и DigitalOcean

1 Ответ

1 голос
/ 12 апреля 2019

(редактировать: ответить на оригинальный вопрос)

если вам нужно добавить столбцы новостей в существующую таблицу, вы должны:

  1. создать новый файл миграции: php artisan make:migration <fileName>
  2. используйте Schema::table() вместо Schema::create() в файле миграции
  3. добавить столбцы как обычные миграции
  4. запустить миграцию: php artisan migrate

пример:

//change create for table
//the first param (in this case 'users') must be the table name that you want to add columns
Schema::table('users', function (Blueprint $table) {
        //news colums here
        $table->string('new_col');
    });

EDIT: ответ отредактировал вопрос:

Могу ли я сделать это или я должен сделать php artisan make: миграция add_user_type_users?

-

ВОЗМОЖНО, НО НЕ ПРАВИЛЬНЫЙ ПУТЬ:

Да, вы можете редактировать свой старый файл миграции, НО, если вы это сделаете, ваши nexts php artisan migrate не изменят уже перенесенные файлы, и вы здесь ДОЛЖНЫ удалить свою таблицу и его данные в этом случае, а также удалить из таблицы миграции для запуска вашего отредактированного файла миграции. так что это не ответ для производственной среды. Если вы делаете это, вы берете на себя множество проблем, которых вы бы избежали. может быть, вы можете сделать это на Dev. окр. потому что вы можете удалять и создавать таблицы в любое время без потери реальных данных.

-

ПРАВИЛЬНЫЙ ПУТЬ:

вы ДОЛЖНЫ создать новый файл миграции (как и исходный ответ), и у вас не возникнет проблем с потерей данных (если вы этого не хотите), и миграция будет запущена в рабочем режиме без всякого удаления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...