php artisan db:seed # DatabaseSeeder
php artisan db:seed --class=UserSeeder # один конкретний
php artisan migrate:fresh --seed # перебудувати базу й наповнити
DatabaseSeeder - точка входу. Він викликає інші сідери в потрібному порядку:
class DatabaseSeeder extends Seeder
{
public function run(): void
{
$this->call([
UserSeeder::class,
PostSeeder::class, // після користувачів - пости мають авторів
]);
}
}
Новий сідер створює php artisan make:seeder UserSeeder, і його треба додати в call(), інакше db:seed без --class його не запустить.
На продакшені команда питає підтвердження; у скриптах деплою додають --force. Але сідери з тестовими даними там не запускають узагалі - лише ідемпотентні довідники.
migrate:fresh видаляє всі таблиці - для локальної бази з даними, які шкода втратити, краще окремий db:seed --class=....