2016-02-18 3 views
0

Я в настоящее время beginner of laravel. Я изучаю laravel 5.2 от его official docs. После изучения migration в laravel, я очень четко понимаю концепцию миграции. Но на практике с помощью кода сценариев у меня возникает проблема. Проблема в том, что, как говорит laravel, laravel allows a team to easily modify and share the application's database schema. Но как change the structure of database table после того, как он создается через файл миграции таблицы. Я нашел решение here. Но я сомневаюсь в 8th step of the solution, что если я запустил эту команду, тогда будет заполнен весь заполняющий процесс миграции. Так что это даст мне ошибку Table is already exists. Я прав? Если да, то объясните с примером, как в этой ссылке. Я думаю, что мне нужно запустить только последний файл миграции 2013_05_23_202930_update_users.php. Если это ответ, то также введите команду для запуска одиночного персикулярного файла. Если кто-нибудь знает ответ, ответ будет оценен.Как использовать миграцию в Laravel?

ответ

0

Окей ребята, я нашел решение. После ссылки this link, я узнаю, что решение в правильной связи вопроса правильно. По какой-то причине, которую я не знаю, таблица не менялась. Но после перезагрузки моей системы она работает. Но ответ @rome также приемлем.

2

Чтобы создать таблицу:

if (!Schema::hasTable('users')) { 
     Schema::create('users', function (Blueprint $table) { 
      $table->engine = 'InnoDB'; 
      $table->increments('id')->unsigned(); 
      $table->string('username'); 
      $table->string('password', 60);     
      $table->timestamps(); 
      $table->softDeletes(); 
     }); 
    } 

Чтобы добавить несколько столбцов в этой таблице:

PHP ремесленник замыкающих: миграция add_somthing_to_users_table --Настольные = пользователи

Schema::table('users', function (Blueprint $table) { 
     // 
     if (!Schema::hasColumn('users', 'fb_id')) { 
      // 
      $table->string('fb_id')->default(''); 
     } 
    }); 
+0

Так вы говорите, что когда мне нужно обновлять таблицу, я должен написать код в файле миграции create_users, а затем выполнить ту же команду, что и на восьмом шаге этой ссылки? Поскольку таблица уже создана, так скрипт для создания таблицы будет пропущен? И еще, если есть какой-либо другой способ, как отдельный файл миграции, то, пожалуйста, также объясните это. –

+0

bdw Я доволен вашим ответом. Но laravel назвал файл миграции с временным префиксом, поэтому я думаю, что laravel предлагает создать отдельный файл для этого типа задачи. Поэтому я говорю вам о альтернативном решении. –

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