Top Menu

Here, i will explain to create seeder for insert multiple records on database table in laravel framework. In this example you will show how to use seeder and how you can run specific seeder in laravel project.

We should know what is database seeder in laravel and why we should use before start example of database seeding. Laravel provides a tool to add sample or dummy data to our databases automatically. that is call it database seeding.

Laravel database seeder through we can add simply testing data on our database table. Database seed is extremely useful because testing with various data allows you to likely detect bugs you otherwise would have overlooked. We have to simple make one time seeder with some dummy data, that way we can simply reuse when you deploy project first time. We can make seeder after migration of table.

So today in this example we will add some sample data of settings table from scratch. So laravel provide us command for creating seed and run that. so first run bellow command for create “SettingsTableDataSeeder” seeder.

Add a subheading

Create Seeder command:

php artisan make:seeder SettingsTableDataSeeder

After run above command successfully, you will be found new created file on this path “database/seeds/SettingsTableDataSeeder.php”. In this file i make four sample settings for settings table using insert query. So open SettingsTableDataSeeder.php file and some sample data like as bellow.

database/seeds/UsersTableDataSeeder.php

<?php

namespace Database\Seeders;
use App\Models\Settings;
use Illuminate\Database\Seeder;

class SettingsTableDataSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        Settings::create([
            'settingname' =>"website_title",
            'settingvalue' =>'Personal Portfolio',
            'status' =>0
        ]);
        Settings::create([
            'settingname' =>"meta_description",
            'settingvalue' =>'',
            'status' =>0
        ],);
        Settings::create([
            'settingname' =>"meta_keyword",
            'settingvalue' =>'',
            'status' =>0
        ]);
        Settings::create([
            'settingname' =>"address",
            'settingvalue' =>'',
            'status' =>0
        ]);
        Settings::create([
            'settingname' =>"mobile",
            'settingvalue' =>'9451293997',
            'status' =>0
        ]);
        Settings::create([
            'settingname' =>"phone",
            'settingvalue' =>'9451293997',
            'status' =>0
        ]);
        Settings::create([
            'settingname' =>"email",
            'settingvalue' =>'jafarkhanphp@gmail.com',
            'status' =>0
        ]);
        Settings::create([
            'settingname' =>"logo",
            'settingvalue' =>'',
            'status' =>0
        ]);
        Settings::create([
            'settingname' =>"linkedIn",
            'settingvalue' =>'',
            'status' =>0
        ]);
        Settings::create([
            'settingname' =>"facebook",
            'settingvalue' =>'',
            'status' =>0
        ]);
        Settings::create([
            'settingname' =>"twitter",
            'settingvalue' =>'',
            'status' =>0
        ]);
        Settings::create([
            'settingname' =>"pinterest",
            'settingvalue' =>'',
            'status' =>0
        ]);
    }
}         'name' => str_random(8),
	            'email' => str_random(12).'@mail.com',
	            'password' => bcrypt('123456')
	        ]);
    	}
    }
}

Now we are ready to run above seeder using bellow command:

Run Seeder Command:

php artisan db:seed --class=SettingsTableDataSeeder

Outpout:

About The Author

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Close