Удобно разбивать сидеры по отдельным файлам,
но не очень удобно вызывать каждый сидер
по-отдельности. Для упрощения можно
в DatabaseSeeder
прописать автоматический
вызов всех отдельных сидеров.
Пусть, к примеру, у нас есть два отдельных
сидера: PostSeeder
и CommentSeeder
.
Давайте вызовем их в основном сидере.
Для этого для начала заюзаем наши
отдельные сидеры:
<?php
use PostSeeder;
use CommentSeeder;
class DatabaseSeeder extends Seeder
{
public function run()
{
}
}
?>
А теперь пропишем их вызов с помощью
специального метода call
:
<?php
class DatabaseSeeder extends Seeder
{
public function run()
{
$this->call([
PostSeeder::class,
CommentSeeder::class,
]);
}
}
?>
Теперь можно запустить все прописанные сидеры с помощью уже известной вам команды на запуск основного сидера:
php artisan db:seed
Пропишите в основном сидере сидер с для юзеров, сидер для городов и сидер для стран.