Skip to main content

Laravel Database : Membuat Jutaan Data Dummy Menggunakan Faker Generator di Laravel



faker generator adalah salah satu library magic yang build in di laravel, dengan menggunakan library ini kita bisa membuat puluhan, ratusan bahkan jutaan data dummy dengan hanya sekali pukul. udah kebayang belom? kalo belom kita langsung aja masuk ke praktiknya.

like foolest people gonna smart when use faker

oke guys, lets do this.

pertama tama, liat diagram berikut yak, biar runtut langkah langkahnya



naah langkah runtutnya kurang lebih seperti ini 
create migration->model->faker->seeder->execute->test

oke guys, mari kita buat migrationnya, studi kasus yang mau kita buat adalah membuat artikel blog dengan table sederhana seperti berikut


1. ketikkan perintah berikut di terminal

php artisan make:migration artikel

 2. buka file migrationnya di folder database>migration>[nama migration]



3. ketikkan perintah berikut di terminal

php artisan migrate

oke guys hasilnya nanti akan seperti ini


setelah langkah di atas selesai, skrg kita masuk ke langkah membuat model

1. ketikkan perintah berikut di terminal untuk membuat model

php artisan make:model Artikel
2. deklarasi variable $table untuk menentukan table mana yang akan di manage

berikut kodenya





nah, akhirnya modelnya sudah jadi. skrg kita lanjut ke langkah pembuatan factory . yaitu bagian utama di tutorial ini

1. masuk ke folder database>factories lalu buka file ModelFactory.php 

2. ketikkan kode berikut untuk membuat data dummy dari table artikel



contoh kode factory udah bisa di lihat di file ModelFactory itu sendiri, yaitu ada factory dari model user, jadi kode yang perlu kalian perhatikan adalah di bagian scope return di setiap factorynya. seperti berikut

return [
 'name' => $faker->firstNameFemale, //kode faker
];

pada kode faker di atas banyak skali variannya, seperti alamat, kota, no telphone, email, username, sampai dummy images pun ada. woww banget kan. nah apabila kalian pengen tau lengkapnya bisa lihat di repository dari faker itu sendiri, disini

oke, next, selanjutnya kita akan masuk ke step create seeder , pada langkah ini kita cukup simple

1. ketikkan perintah berikut di terminal

php artisan make:seeder DummyArtikel

2. buka file seeder di database>seeds. lalu ketikkan kode berikut di dalam function run


factory(App\Artikel::class, 100)->create();

jumlah 100 bisa kalian ganti2 sesuai kebutuhan kalian, jadi kalo mau satu juga ya tinggal kasih aja angka 1 juta wkwkwk. oke guys faham ya sampe sini. great!

lanjutt

finally kita akan masuk ke langkah2 terakhir yaitu eksekusi dan test

1. ketikkan perintah berikut untuk melakukan seeding ke table yang udah kita buat tadi dari mulai langkah pertama

php artisan db:seed --class="DummyArtikel"

2. hasil dari command di atas akan memberikan data dummy sebanyak 100 row kedalam table artikel. seperti berikut




voilaaa, 100 rows udah masuk  ke dalam table kita. slamat guys

apabila ada pertanyaan atau error, silahkan layangkan di komentar ya. good luck ^_^

Popular posts from this blog

Automatic API Documentation Swagger in Golang #GolangDev

pixabay.com In this article, I'll explain how to generate an API blueprint instantly using SwagGo in Golang. API blueprint is a document that contains a bunch of API endpoints, its slickly same as documentation but less description, it's allow another programmer to read and see all the available endpoint and try it out with sandbox feature. Swagger is one of the most used API blueprints right now, it's available in free but limited usage. if you wanna use the free credit, you need to understand YAML notation, you can read the example notation in swagger official documentation. but again, it's really hard and takes an expensive time to arranges all the notation to achieve a good API blueprint. fortunately, there are tools in Golang that allow us to generate the YAML notation and automatically generate the blueprint page with only using markup notation, and it's FREE unlimited for self-host, insane right? SwagGo tools are available here , the documentation is very cl...

Mengapa .env File Laravel Tidak Terupload / Tercommit ke Git

.env file atau bisa kita bilang "environment file" atau file yang berisi variable constan untuk memberikan value secara global ke dalam aplikasi kita. file ini berisi variable dan value yang sensitif yang membuatnya sangat riskan atau beresiko apabila di ketahui oleh orang yang tidak bertanggung jawab. contoh  seperti berikut ini file .env di atas memiliki informasi sensitif seperti host, user dan password dari database kita. maka dari itu kita sebagai developer harus pintar-pintar untuk memperlakukan .env file ini, secara default apabila kita upload ke hosting atau vps file .env ini tidak akan bisa di akses secara global dari host kita, karna letak root host kita ada di folder public yang notabene berada di satu level ke atas folder dari posisi .env. jadi user awam tidak akan bisa mengakses dari host kita eg : http://angon.dev/.env . nah kalo ke git gmn? apabila kita menggunakan version controller seperti github, gitlab, bitbucket. secara default git akan mem...

OpenVPN Alternatif Solusi Menanggulangi Blokir dari KOMINFO

Sejak akhir juli 2022 kemaren indonesia di gegerkan dengan tindakan kominfo atas diblokirnya banyak platform digital karna tidak mendaftar PSE, terutama paypal dan plaform game (steam, epic game dll). keputusan ini semakin membuat netizen geram dikarenakan platform judi online malah disetujui untuk beroperasi karna sudah daftar PSE. Jujur menurut saya memang keputusan ini sejak awal saya dengar sudah mengada-ada karna sangat aneh memblokir semua platform digital yang jumlahnya tidak terhitung banyaknya dan hanya membolehkan akses platform yang sudah mendaftar yang jumlahnya hanya ratusan.  saya sebagai developer juga merasa aneh banget ini kebijakan apalagi platform development juga banyak yang di blacklist oleh kominfo seperti, github, gitlab, bitbucket, even website CDN pun di blacklist. astaga wkwkwk. anyway terlepas dari kebijakan konyol ini, saya mau berbagi tips cara agar tetep bisa mengakses semua platform tersebut tanpa ada halangan, yaitu dengan menggunakan VPN. banyak ban...