Laravel 4 db seed specific seeder file

You can call individual seed classes by their class name. From the docs.

By default, the db:seed command runs the DatabaseSeeder class, which may be used to call other seed classes. However, you may use the --class option to specify a specific seeder class to run individually:

php artisan db:seed --class=ProductTableSeeder

In the example above, the ProductTableSeeder class should exist in database/seeds.


Here's a working example with the class full namespace:

Should use double backslashes \\.

Class name is DefaultBannersSeeder.

php artisan db:seed --class=App\\Containers\\Banners\\Data\\Seeders\\DefaultBannersSeeder

You can also edit your database/seeders/DatabaseSeeder.php file's $this->call() instruction:

<?php
namespace Database\Seeders;

use Illuminate\Database\Seeder;

class DatabaseSeeder extends Seeder
{
    /**
     * Seed the application's database.
     *
     * @return void
     */
    public function run()
    {
        $this->call([
            UserTableSeeder::class,
            PermissionsSeeder::class
        ]);
    }
}