Seeders are used to fill the database with test or initial data. They are stored in the database/seeders/
directory.
Generate a new seeder using Artisan:
php artisan make:seeder UserSeeder
This creates a file in database/seeders/UserSeeder.php
.
Edit the run
method inside UserSeeder.php
:
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
class UserSeeder extends Seeder
{
public function run() {
DB::table('users')->insert([
'name' => 'John Doe',
'email' => 'johndoe@example.com',
'password' => bcrypt('password'),
]);
}
}
Run the specific seeder:
php artisan db:seed --class=UserSeeder
Or run php artisan db:seed
if UserSeeder is called in DatabaseSeeder.php
:
namespace Database\Seeders;
use Illuminate\Database\Seeder;
class DatabaseSeeder extends Seeder
{
/**
* Seed the application's database.
*/
public function run(): void {
$us = new UserSeeder();
$us->run();
}
}