Rumahweb Journal
banner - belajar laravel bagian 5

Belajar Laravel Bagian 5: Database, Seeder dan Faker 

Setelah belajar tentang sistem templating blade di bagian 4, selanjutnya kita akan membahas tentang database, seeder dan faker pada seri belajar Laravel bagian ke 5. Penasaran seperti apa? Yuk simak informasi berikut ini.

Laravel memiliki fitur untuk mengisi data ke database dengan data dummy. Fitur ini sangat bermanfaat, saat Anda ingin melakukan testing aplikasi menggunakan data sampel yang banyak.

Seeder dan faker memiliki fungsi yang sama, yaitu membuat data sampel pada database. Namun keduanya memiliki perbedaan. Apa itu ? Yuk kita belajar laravel tentang database, seeder dan faker.

Database

Sebelum mempelajari seeder dan faker, mari kita coba buat tabel database dan mengisinya secara manual, supaya nanti terlihat betapa praktisnya menggunakan fitur Seeder Faker Laravel.

1. Buat database

Untuk membuat database, caranya sama seperti panduan cara membuat database di Localhost. Di panduan series ini, kita masih menggunakan database yang dibuat pada tutorial sebelumnya, yaitu database dbrw-laraveltutorial.

2. Buat tabel

Selanjutnya, kita buat tabel baru dengan nama pegawai.

Pindah Hosting ke Rumahweb Gratis

membuat tabel rumahweb phpmyadmin

Setelah itu buat kolom dengan nama berikut.

insert data tabel phpmyadmin

Untuk mengisi datanya nanti, kita akan menggunakan seeder.

Seeder

Seeder atau biasa disebut dengan Seeding adalah fitur pada Laravel yang dapat membantu kita membuat data dummy dengan mudah. Fitur ini sangat membantu, saat kita akan membangun atau mengembangkan aplikasi yang memerlukan banyak data untuk diolah. 

Sebagai contoh, Anda ingin membuat aplikasi sistem informasi akademik yang memiliki fitur seperti insert, update, delete dan mencoba beberapa fitur lain seperti pagination, Anda dapat membuat data dummy dengan mudah menggunakan seeder.  Dengan menggunakan perintah php artisan, Anda tidak perlu lagi repot input data sampel secara manual.

Cara menggunakan Seeding

Nantinya kita akan menggunakan perintah php artisan untuk membuat data Seeding. Masih menggunakan database sebelumnya yang telah dibuat yang bernama  dbrw-laraveltutorial, kita akan tambahkan data baru disana.

  1. Buka terminal dan masuk projek Laravel 
  2. Selanjutnya ketikkan perintah
php artisan make:seeder PegawaiSeeder
  1. Cek file seeder

File seeder ada di direktori rw-laraveltutorial\database\seeders\PegawaiSeeder.php. Selanjutnya buka file tersebut kemudian edit menjadi berikut.

<?php
 
namespace Database\Seeders;

use Illuminate\Database\Console\Seeds\WithoutModelEvents;
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;

 
class PegawaiSeeder extends Seeder
{
    /**
 	* Run the database seeds.
 	*
 	* @return void
 	*/
    public function run()
    {
    	// insert data ke table pegawai
        DB::table('pegawai')->insert([
        	'pegawai_nama' => 'Rudi',
        	'pegawai_jabatan' => 'Web Designer',
        	'pegawai_umur' => 25,
        	'pegawai_alamat' => 'Jl. Jogja'
        ]);
        
    }
}

Keterangan

Method run digunakan untuk input pegawai dengan nama , jabatan, umur , alamat sesuai yang dituliskan dalam script.

  1. Jalankan perintah seeder

Untuk menjalankan perintah seeder, silakan jalankan fungsi run() menggunakan perintah artisan berikut.

php artisan db:seed --class=PegawaiSeeder

Dengan perintah itu, maka akan menghasilkan data berikut.

select sql rumahweb phpmyadmin

Selanjutnya kita akan belajar membuat data menggunakan faker menggunakan perulangan for untuk mengisi banyak data secara otomatis.

Faker

Faker merupakan library Laravel yang digunakan untuk menghasilkan data dummy secara acak namun tetap tampak realistis. Selain itu, faker dapat menciptakan data fiktif dalam jumlah besar. Anda perlu data dummy, 10, 100, 1000 atau lebih, Anda dapat membuatnya secara cepat dengan menggunakan library faker.

Cara menggunakan Faker

Pada contoh ini, kita akan membuat 50 data pegawai secara dummy. Langkahnya.

  1. Buka file seeder sebelumnya

Buka file belajar_laravel/database/seeds/PegawaiSeeder.php . Edit Filenya menjadi berikut

<?php
namespace Database\Seeders;
use Illuminate\Database\Console\Seeds\WithoutModelEvents;
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
 
use Faker\Factory as Faker;
 
 
class PegawaiSeeder extends Seeder
{
    /**
 	* Run the database seeds.
 	*
 	* @return void
 	*/
    public function run()
    {
 
    	$faker = Faker::create('id_ID');
 
    	for($i = 1; $i <= 50; $i++){
 
    	      // insert data ke table pegawai menggunakan Faker
    		DB::table('pegawai')->insert([
    			'pegawai_nama' => $faker->name,
    			'pegawai_jabatan' => $faker->jobTitle,
    			'pegawai_umur' => $faker->numberBetween(25,40),
    			'pegawai_alamat' => $faker->address
    		]);
 
    	}
 
    }
}

Keterangan:

use Faker\Factory as Faker;  digunakan untuk memanggil class Faker.
$faker = Faker::create(‘id_ID’);   digunakan untuk mengisi data faker dengan data-data yang identik dengan Indonesia.

  1. Jalankan perintah faker

Untuk menjalankannya menggunakan perintah:

php artisan db:seed --class=PegawaiSeeder

Selanjutnya akan terbuat data pegawai sebanyak 50 sesuai dengan banyaknya data yang kita isikan di script PegawaiSeeder. 

demo seeder faker rumahweb - belajar laravel bagian 5

Kesimpulan

Sampai disini Anda sudah terbayang kan manfaat dari fitur seeder dan faker. Selanjutnya dari sample yang telah dibuat ini, Anda dapat mengembangkan dan membuat data dummy sebanyak kebutuhan dari sistem Anda. 

Demikian pembahasan kami di seri belajar Laravel bagian 5 ini tentang database, seeker dan faker. Untuk tutorial belajar Laravel bagian 6, kami akan membahas tentang CRUD di Laravel. Terima kasih.

Bermanfaatkah Artikel Ini?

Klik bintang 5 untuk rating!

Rating rata-rata 5 / 5. Vote count: 1

Belum ada vote hingga saat ini!

Kami mohon maaf artikel ini kurang berguna untuk Anda!

Mari kita perbaiki artikel ini!

Beri tahu kami bagaimana kami dapat meningkatkan artikel ini?

VPS Alibaba

Anggit TS

Selamat membaca, Semoga tulisan saya bermanfaat.
Bila ada salah kata, mohon maaf.

"tak ada gading yang tak retak, maafkan kesalahan keluarga Gajah". :D

banner pop up - Pindah Hosting ke Rumahweb