Belajar Laravel 8 #7 : Faker dan Seeder pada Laravel

faker-dan-seeder
Belajar Laravel

Artikel kali ini akan terfokus kepada dua hal yang laing berkaitan, yaitu Fakder dan Seeder pada Laravel. Faker dan Seeder ini merupakan sebuah Fitur unggulan yang dimiliki oleh Laravel, tapi apa sih Faker dan Seeder itu? Bagaimana penggunaanya? Lalu penting tidak sih untuk dipelajari?

Apa itu Faker dan Seeder?

Disini kita akan membahas satu-persatu mengenai Faker dan Seeder. Dimulai dari pengertiannya sampai cara kerja dari Faker dan Seeder ini.

Pengetian Seeder

Seperti artinya, Seeder (benih) ini adalah sebuah fungsi untuk menanamkan Benih berupa Data pada Database kita. Jadi saat nanti kita melakukan migrations, Database kita sudah terisi Data dari hasil Seeder kita. Pada intinya seeder ini memungkinkan kita untuk membuat Dummy Data yang akan kita gunakan untuk testing Database kita nantinya.

Secara default seeder ini terletak didalam Folder database/seeders, kalau teman-teman lihat di dalamnya sudah terdapat File default yaitu DatabaseSeeder.php. Nah, kita bisa menggunakan File default ini untuk menjalankan Seeder kita.

Terdapat 2 syntax yang bisa kita tulis di file DatabaseSeeder.php ini, yang pertama menggunakan Faker, yang kedua menggunakan bagian Model. Sekarang kita akan membahas untuk yang penggunaan Model terlebih dahulu. Jadi kita akan menggunakan Model Create disini.

Pertama, pastikan kalian sudah membuat Database dan Tabel yang akan kita isi. kalian bisa buat manual ataupun menggunakan Migrations. Kurang lebih yang aku buat seperti ini

Belajar Laravel 8 #7 : Faker dan Seeder pada Laravel Dunia Coding

Bisa dilihat kita menggunakan table Student dengan kolom yang berisi id, dan name saja.

Sekarang akan kita buat Seeder nya, Fokus kita ke file DatabaseSeeder.php, didalam fungsi public function run(), kita tambahkan syntax berikut,

public function run()
    {
        // \App\Models\User::factory(10)->create();

        Student::create([
            'name' => 'Alfian'
        ]);

        Student::create([
            'name' => 'Fery'
        ]);
    }

Nah, kita sudah membuat 2 Seed untuk Data kita, yaitu yang Create name 'Alfian' dan name 'Fery'. Sekarang tinggal jalankan lagi migrasi baru tapi ditambah dengan seed kita. Syntax di terminal nya seperti ini

php artisan migrate:fresh --seed

Kita menggunakan :fresh untuk menghapus semua tabel dan membuat tabel baru, lalu dengan --seed berati kita juga menjalankan File DatabaseSeeder.php kita. Apabila sudah selesai, langsung saja buka Table Student lagi.

Belajar Laravel 8 #7 : Faker dan Seeder pada Laravel Dunia Coding

Nah kalau dilihat, sekarang sudah ada Data nya, sesuai yang kita buat didalam DatabaseSeeder.php kita.

Pengertian Faker

Apa itu Faker? Menurut Website nya yang ada di fakerphp.github.io Faker adalah sebuah Liblary PHP yang memberikan Fake data ke Database kita. Laravel sendiri sudah memberikan kita Faker ini, jadi kita tidak perlu instalasi Faker di Laravel kita.

Nah, sekarang kita fokus ke Penggunaan Faker. Faker ini sebenarnya bisa digunakan di dalam file DatabaseSeeder.php tapi lebih baik kita menggunakan Faker di Folder tersendiri, yaitu Folder database/factory. Didalam Folder ini kita bisa membuat "Resep" untuk Faker kita. Pasti sekarang sudah ada contoh dari File default yang ada disana yaitu UserFactory.php. Nah sekarang kita akan membuat sebuah File baru saja. Jalankan syntax dibawah ini

php artisan make:factory StudentFactory

Setelah itu, sekarang kita edit File StudentFactory.php kita. Tambahkan Faker didalam syntax fungsi definition() nya. Kurang lebih seperti ini

public function definition()
    {
        return [
            'name' => $this->faker->name(),
        ];
    }

Nah, bisa dilihat diatas kita menggunakan return untuk mengembalikan nilai Faker nama. Sekarang tinggal kita jalankan saja. Kembali ke DatabaseSeeder.php lalu edit fungsi di public funcion run() nya jadi seperti ini.

public function run()
    {
        // \App\Models\User::factory(10)->create();

        Student::factory(5)->create();
    }

Nah kita tinggal tambahkan Student::factory(5)->create();, disitu terdapat angka 5 untuk jumlah Data Dummy yang akan kita buat. Setelah itu tinggal dijalankan lagi saja dengan syntax yang sama untuk Seeder

php artisan migrate:fresh --seed

Setelah itu, tinggal kita lihat saja hasilnya di Database kita, hasilnya seperti ini

Belajar Laravel 8 #7 : Faker dan Seeder pada Laravel Dunia Coding

Nah, sudah keliatan ya. Kita sudah berhasil membuat 5 Data Palsu menggunakan Faker.

Selain Nama, Faker ini juga menyediakan Data Dummy lain yang bisa kalian lihat langsung di Dokumentasinya di fakerphp.github.io.

Kesimpulan

Nah disini kita sudah selesai belajar tentang Faker dan Seeder pada Laravel 8. Fitur Faker dan Seeder ini akan sering kita temui apalagi saat kita melakukan Developing Website ini. Untuk Artikel Faker dan Seeder ini aku cukupkan sekian teman-teman. Semoga bermanfaat untuk kita semua.

Oh iya kalian bisa lihat tentang Migrations disini ya

  1. Belajar Laravel 8 #6 : Database Migrations
Share

You may also like...

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *