Руководство по миграции в Laravel: упрощение изменений в базе данных с помощью примеров кода

Миграции Laravel — важный инструмент управления изменениями схемы базы данных в приложениях Laravel. Они предоставляют удобный способ изменить структуру базы данных с помощью кода вместо ручных сценариев SQL. В этой статье мы рассмотрим различные методы миграции Laravel, а также приведем примеры кода, которые помогут вам понять и эффективно их реализовать.

Метод 1: создание миграции

Чтобы создать новую миграцию, вы можете использовать команду make:migrationArtisan. Допустим, мы хотим создать таблицу «Пользователи» со столбцами для имени и электронной почты. Вот пример файла миграции:

<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreateUsersTable extends Migration
{
    public function up()
    {
        Schema::create('users', function (Blueprint $table) {
            $table->id();
            $table->string('name');
            $table->string('email')->unique();
            $table->timestamps();
        });
    }
    public function down()
    {
        Schema::dropIfExists('users');
    }
}

Метод 2: выполнение миграции

После того как вы создали миграцию, вы можете запустить ее с помощью команды migrateArtisan. Эта команда выполнит все ожидающие миграции. Запустите следующую команду в своем терминале:

php artisan migrate

Метод 3. Откат миграции

Чтобы откатить последний пакет миграций, вы можете использовать команду migrate:rollbackArtisan. Эта команда отменит последний набор выполненных миграций. Запустите следующую команду в своем терминале:

php artisan migrate:rollback

Метод 4. Переход на конкретную версию

Если вы хотите перенести базу данных на определенную версию, вы можете использовать команду migrateArtisan с опцией --to. Например, если вы хотите перейти на версию 20220101000000, выполните следующую команду:

php artisan migrate --to=20220101000000

Метод 5: обновление базы данных

Чтобы откатить все миграции и запустить их повторно, вы можете использовать команду migrate:refreshArtisan. Эта команда полезна, если вы хотите начать миграцию заново. Запустите следующую команду в своем терминале:

php artisan migrate:refresh

Метод 6. Заполнение базы данных после миграции

Laravel предоставляет удобный способ заполнить вашу базу данных образцами данных после выполнения миграции. Вы можете создать сеялку с помощью команды make:seederArtisan, а затем запустить ее с помощью команды db:seedArtisan. Вот пример:

<?php
use Illuminate\Database\Seeder;
use App\Models\User;
class UserSeeder extends Seeder
{
    public function run()
    {
        User::factory()->count(10)->create();
    }
}

Чтобы запустить разбрасыватель, используйте следующую команду:

php artisan db:seed --class=UserSeeder

Миграции Laravel упрощают процесс управления изменениями базы данных в приложениях Laravel. В этой статье мы рассмотрели несколько методов, включая создание миграции, выполнение миграции, откат миграции, переход на определенную версию, обновление базы данных и заполнение базы данных после миграции. Используя эти методы, вы можете легко управлять схемой базы данных и синхронизировать ее с меняющимися требованиями вашего приложения.