Membuat Dummy Data dengan Seeder di Laravel

     Beberapa bulan yang lalu skripku.com pernah membahas tentang Migration di Laravel, kali ini kita akan belajar bersama cara membuat dummy data dengan Seeder. Sebelum belajar lebih jauh, kita liat dulu Seeder itu apa sih. Kalau dilihat dari bahasa 'Seeder' ini artinya benih, secara istilah saya kurang tau hehe. Tapi kurang lebih fungsi Seeder ini adalah untuk membuat Dummy Data yang bisa kita masukan secara otomatis kedalam database. Sehingga untuk melakukan pengujian aplikasi kita nanti, kita tidak usah input data manual. Laravel ini sangat memudahkan sekali bagi seorang web developer, terutama untuk yang bekerja dalam team. Jadi ketika orang lain ingin mencoba aplikasi kita, kita tidak usah meng-copy database-nya sama sekali. Untuk membuat struktur database kita bisa menggunakan Migrations dan untuk contoh dummy data nya kita bisa menggunakan Seeder ini. Oke perkenalannya cukup segini aja ya? Mari kita lanjut dengan membuat Seeder. Oh iya, sebelum melanjutkan tutorial ini pastika temen-temen sudah membaca dan mengerti tentang Migrations yang bisa dibaca disini, karena kita akan melanjutkan pembahasan yang ada di artikel tersebut.

Membuat Seeder

Untuk membuat Seeder kita cukup menggunakan perintah php artisan make:seeder kemudian diikuti nama Seeder. Misal:
Kemudian kita buka project laravel kita, dan perhatikan di direktori database/seeds, maka kita akan menemukan file OrangSeeder.php yang kurang lebih isinya seperti ini:
Disitu kita lihat terdapat method run, di method run ini kita akan isi perintah untuk memasukan dummy data ke database kita. Sebagai contoh kita akan memasukan sample data sebanyak 4 baris, kurang lebih seperti ini:

Register Class di DatabaseSeeder.php

Masih di direktori yang sama, kita buka file DatabaseSeeder.php kemudian kita tambahkan class OrangSeeder tadi agar ketika menjalankan php artisan db:seed Laravel Seeder akan memanggil class yang sudah kita buat tadi:


Menjalankan Seeder

Selanjutnya masuk ke Terminal/CMD kemudian arahkan ke direktori project Laravel kita terus jalankan perintah php artisan db:seed di Terminal/CMD kita.
Kemudian kita buka Console Database atau phpMyAdmin (jika pake MySQL) untuk memastikan apakah dummy data berhasil masuk atau tidak ke database.
Nah sepertinya kita sudah berhasil, yang jadi pertanyaan mungkin kenapa created_at sama updated_at nya NULL? Itu karena kita masukin data langsung ke Tabel lewat Facade DB, jika kita ingin kedua kolom tadi terisi kita bisa insert data lewat Model. Insya Allah untuk Model akan saya bahas pada artikel berikutnya.

Sekian tutorial kali ini,
Semoga bermanfaat,
Wassalamualaikum Warahmatullahi Wabarakatuh
Latest