Запуск сеялок в Laravel Migrations: подробное руководство

Чтобы запустить программу раздачи в миграции Laravel, вы можете выполнить следующие действия:

Шаг 1. Создайте сеялку
Создайте сеялку с помощью следующей команды:

php artisan make:seeder SeederName

Замените «SeederName» на желаемое имя вашей сеялки. Эта команда создаст файл раздачи в каталоге database/seeds.

Шаг 2. Определите сеялку
Откройте сгенерированный файл сеялки и определите метод run. Этот метод будет содержать код для заполнения вашей базы данных. Вот пример сеялки, которая вставляет записи в таблицу users:

use Illuminate\Database\Seeder;
use App\Models\User;
class SeederName extends Seeder
{
    public function run()
    {
        User::create([
            'name' => 'John Doe',
            'email' => 'johndoe@example.com',
            'password' => bcrypt('password123'),
        ]);
        // Add more seed data here...
    }
}

Шаг 3. Запустите программу раздачи
Чтобы запустить программу раздачи, используйте следующую команду:

php artisan db:seed --class=SeederName

Замените «SeederName» на имя вашей раздающей системы. Эта команда выполнит метод runи заполнит базу данных определенными исходными данными.

Дополнительные методы запуска сеялок в миграции Laravel:

  1. Команда Seed All
    Laravel предоставляет удобный способ запуска всех сеялок одновременно с помощью команды db:seedбез указания конкретного класса сеялки. При этом будут запущены все раздающие, определенные в файле database/seeds/DatabaseSeeder.php. Выполните следующую команду:

    php artisan db:seed
  2. Обновление и заполнение
    Если вы хотите обновить базу данных, а затем заполнить ее, вы можете использовать команды migrate:refreshи db:seedвместе. Это приведет к отмене всех миграций, повторной миграции и затем запуску раздающих программ. Выполните следующие команды:

    php artisan migrate:refresh --seed
  3. Заполнение определенных сред
    Вы можете указать среду, в которой вы хотите запускать раздающие, используя параметр --env. Например, чтобы запустить системы раздачи в производственной среде, используйте следующую команду:

    php artisan db:seed --class=SeederName --env=production