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.

Setelah itu buat kolom dengan nama berikut.

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.
- Buka terminal dan masuk projek Laravel
- Selanjutnya ketikkan perintah
php artisan make:seeder PegawaiSeeder
- 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.
- 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.

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.
- 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.
- 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.

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.