{"id":969,"date":"2022-01-25T10:10:00","date_gmt":"2022-01-25T03:10:00","guid":{"rendered":"https:\/\/duniacoding.info\/?p=969"},"modified":"2022-01-25T09:07:24","modified_gmt":"2022-01-25T02:07:24","slug":"belajar-laravel-faker-dan-seeder-laravel","status":"publish","type":"post","link":"https:\/\/duniacoding.id\/blog\/belajar-laravel-faker-dan-seeder-laravel\/","title":{"rendered":"Belajar Laravel 8 #7 : Faker dan Seeder pada Laravel"},"content":{"rendered":"\n<figure class=\"wp-block-image size-full is-resized\"><img decoding=\"async\" src=\"https:\/\/duniacoding.info\/wp-content\/uploads\/2021\/12\/laravel_logo_icon_170314.png\" alt=\"faker-dan-seeder\" class=\"wp-image-762\" width=\"840\" height=\"420\" srcset=\"https:\/\/duniacoding.id\/blog\/wp-content\/uploads\/2021\/12\/laravel_logo_icon_170314.png 512w, https:\/\/duniacoding.id\/blog\/wp-content\/uploads\/2021\/12\/laravel_logo_icon_170314-300x150.png 300w\" sizes=\"(max-width: 840px) 100vw, 840px\" \/><figcaption>Belajar Laravel<\/figcaption><\/figure>\n\n\n\n<p>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?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Apa itu Faker dan Seeder?<\/h2>\n\n\n\n<p>Disini kita akan membahas satu-persatu mengenai Faker dan Seeder. Dimulai dari pengertiannya sampai cara kerja dari Faker dan Seeder ini.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Pengetian Seeder<\/h3>\n\n\n\n<p>Seperti artinya, Seeder (benih) ini adalah sebuah fungsi untuk menanamkan Benih berupa Data pada Database kita. Jadi saat nanti kita melakukan <code><em>migrations<\/em><\/code>, Database kita sudah terisi Data dari hasil Seeder kita. Pada intinya seeder ini memungkinkan kita untuk membuat <em>Dummy Data <\/em>yang akan kita gunakan untuk <em>testing <\/em>Database kita nantinya. <\/p>\n\n\n\n<p>Secara <em>default <\/em>seeder ini terletak didalam Folder <code>database\/seeders<\/code>, kalau teman-teman lihat di dalamnya sudah terdapat File <em>default <\/em>yaitu <code>DatabaseSeeder.php<\/code>. Nah, kita bisa menggunakan File <em>default <\/em>ini untuk menjalankan Seeder kita. <\/p>\n\n\n\n<p>Terdapat 2 syntax yang bisa kita tulis di file <code>DatabaseSeeder.php<\/code> ini, yang pertama menggunakan Faker, yang kedua menggunakan bagian Model. Sekarang kita akan membahas untuk yang penggunaan Model terlebih dahulu. Jadi kita akan menggunakan <code>Model Create<\/code> disini. <\/p>\n\n\n\n<p>Pertama, pastikan kalian sudah membuat <code>Database <\/code>dan <code>Tabel <\/code>yang akan kita isi. kalian bisa buat manual ataupun menggunakan <code>Migrations<\/code>. Kurang lebih yang aku buat seperti ini<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"152\" src=\"https:\/\/duniacoding.info\/wp-content\/uploads\/2022\/01\/Lar-7-1-1024x152.png\" alt=\"\" class=\"wp-image-975\" srcset=\"https:\/\/duniacoding.id\/blog\/wp-content\/uploads\/2022\/01\/Lar-7-1-1024x152.png 1024w, https:\/\/duniacoding.id\/blog\/wp-content\/uploads\/2022\/01\/Lar-7-1-300x44.png 300w, https:\/\/duniacoding.id\/blog\/wp-content\/uploads\/2022\/01\/Lar-7-1-768x114.png 768w, https:\/\/duniacoding.id\/blog\/wp-content\/uploads\/2022\/01\/Lar-7-1-1536x227.png 1536w, https:\/\/duniacoding.id\/blog\/wp-content\/uploads\/2022\/01\/Lar-7-1.png 1675w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Bisa dilihat kita menggunakan table Student dengan kolom yang berisi <code>id<\/code>, dan <code>name <\/code>saja.<\/p>\n\n\n\n<p>Sekarang akan kita buat Seeder nya, Fokus kita ke file <code>DatabaseSeeder.php<\/code>, didalam fungsi<code> public function run()<\/code>, kita tambahkan syntax berikut,<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\npublic function run()\n    {\n        \/\/ \\App\\Models\\User::factory(10)-&gt;create();\n\n        Student::create(&#91;\n            &#039;name&#039; =&gt; &#039;Alfian&#039;\n        ]);\n\n        Student::create(&#91;\n            &#039;name&#039; =&gt; &#039;Fery&#039;\n        ]);\n    }\n<\/pre><\/div>\n\n\n<p>Nah, kita sudah membuat 2 Seed untuk Data kita, yaitu yang <code>Create <\/code>name<code> 'Alfian'<\/code> dan name <code>'Fery'<\/code>. Sekarang tinggal jalankan lagi migrasi baru tapi ditambah dengan seed kita. Syntax di terminal nya seperti ini<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nphp artisan migrate:fresh --seed\n<\/pre><\/div>\n\n\n<p>Kita menggunakan<code> :fresh<\/code> untuk menghapus semua tabel dan membuat tabel baru, lalu dengan<code> --seed<\/code> berati kita juga menjalankan File <code>DatabaseSeeder.php<\/code> kita. Apabila sudah selesai, langsung saja buka Table <code>Student <\/code>lagi.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"230\" src=\"https:\/\/duniacoding.info\/wp-content\/uploads\/2022\/01\/Lar-7-2-1024x230.png\" alt=\"\" class=\"wp-image-976\" srcset=\"https:\/\/duniacoding.id\/blog\/wp-content\/uploads\/2022\/01\/Lar-7-2-1024x230.png 1024w, https:\/\/duniacoding.id\/blog\/wp-content\/uploads\/2022\/01\/Lar-7-2-300x67.png 300w, https:\/\/duniacoding.id\/blog\/wp-content\/uploads\/2022\/01\/Lar-7-2-768x172.png 768w, https:\/\/duniacoding.id\/blog\/wp-content\/uploads\/2022\/01\/Lar-7-2-1536x345.png 1536w, https:\/\/duniacoding.id\/blog\/wp-content\/uploads\/2022\/01\/Lar-7-2.png 1675w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Nah kalau dilihat, sekarang sudah ada Data nya, sesuai yang kita buat didalam<code> DatabaseSeeder.php <\/code>kita.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Pengertian Faker<\/h3>\n\n\n\n<p>Apa itu Faker? Menurut Website nya yang ada di <a href=\"https:\/\/fakerphp.github.io\/\" target=\"_blank\" rel=\"noopener\">fakerphp.github.io<\/a> 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. <\/p>\n\n\n\n<p>Nah, sekarang kita fokus ke Penggunaan Faker. Faker ini sebenarnya bisa digunakan di dalam file <code>DatabaseSeeder.php<\/code> tapi lebih baik kita menggunakan Faker di Folder tersendiri, yaitu Folder<code> database\/factory<\/code>. Didalam Folder ini kita bisa membuat<code> \"Resep\"<\/code> untuk Faker kita. Pasti sekarang sudah ada contoh dari File <em>default <\/em>yang ada disana yaitu <code>UserFactory.php<\/code>. Nah sekarang kita akan membuat sebuah File baru saja. Jalankan syntax dibawah ini<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nphp artisan make:factory StudentFactory\n<\/pre><\/div>\n\n\n<p>Setelah itu, sekarang kita edit File StudentFactory.php kita. Tambahkan Faker didalam syntax fungsi <code>definition()<\/code> nya. Kurang lebih seperti ini<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\npublic function definition()\n    {\n        return &#91;\n            &#039;name&#039; =&gt; $this-&gt;faker-&gt;name(),\n        ];\n    }\n<\/pre><\/div>\n\n\n<p>Nah, bisa dilihat diatas kita menggunakan <code>return<\/code> untuk mengembalikan nilai <code>Faker <\/code>nama. Sekarang tinggal kita jalankan saja. Kembali ke <code>DatabaseSeeder.php<\/code> lalu edit fungsi di<code> public funcion run() <\/code>nya jadi seperti ini.<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\npublic function run()\n    {\n        \/\/ \\App\\Models\\User::factory(10)-&gt;create();\n\n        Student::factory(5)-&gt;create();\n    }\n<\/pre><\/div>\n\n\n<p>Nah kita tinggal tambahkan <code>Student::factory(5)-&gt;create();<\/code>, disitu terdapat angka 5 untuk jumlah <em>Data Dummy<\/em> yang akan kita buat. Setelah itu tinggal dijalankan lagi saja dengan syntax yang sama untuk Seeder<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nphp artisan migrate:fresh --seed\n<\/pre><\/div>\n\n\n<p>Setelah itu, tinggal kita lihat saja hasilnya di <code>Database <\/code>kita, hasilnya seperti ini<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"224\" src=\"https:\/\/duniacoding.info\/wp-content\/uploads\/2022\/01\/Lar-7-3-1024x224.png\" alt=\"\" class=\"wp-image-978\" srcset=\"https:\/\/duniacoding.id\/blog\/wp-content\/uploads\/2022\/01\/Lar-7-3-1024x224.png 1024w, https:\/\/duniacoding.id\/blog\/wp-content\/uploads\/2022\/01\/Lar-7-3-300x66.png 300w, https:\/\/duniacoding.id\/blog\/wp-content\/uploads\/2022\/01\/Lar-7-3-768x168.png 768w, https:\/\/duniacoding.id\/blog\/wp-content\/uploads\/2022\/01\/Lar-7-3-1536x335.png 1536w, https:\/\/duniacoding.id\/blog\/wp-content\/uploads\/2022\/01\/Lar-7-3.png 1676w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Nah, sudah keliatan ya. Kita sudah berhasil membuat 5 Data Palsu menggunakan Faker. <\/p>\n\n\n\n<p>Selain Nama, Faker ini juga menyediakan Data Dummy lain yang bisa kalian lihat langsung di Dokumentasinya di <a href=\"https:\/\/fakerphp.github.io\/\" target=\"_blank\" rel=\"noopener\">fakerphp.github.io<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Kesimpulan<\/h2>\n\n\n\n<p>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. <\/p>\n\n\n\n<p>Oh iya kalian bisa lihat tentang Migrations disini ya<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li><a href=\"https:\/\/duniacoding.info\/belajar-laravel-database-migrations\/\" target=\"_blank\" rel=\"noopener\">Belajar Laravel 8 #6 : Database Migrations<\/a><\/li><\/ol>\n","protected":false},"excerpt":{"rendered":"<p>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&#46;&#46;&#46;<\/p>\n","protected":false},"author":2,"featured_media":762,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8],"tags":[120,121,93,122],"class_list":["post-969","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tutorial","tag-database","tag-fakder","tag-laravel","tag-seeder"],"_links":{"self":[{"href":"https:\/\/duniacoding.id\/blog\/wp-json\/wp\/v2\/posts\/969","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/duniacoding.id\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/duniacoding.id\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/duniacoding.id\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/duniacoding.id\/blog\/wp-json\/wp\/v2\/comments?post=969"}],"version-history":[{"count":5,"href":"https:\/\/duniacoding.id\/blog\/wp-json\/wp\/v2\/posts\/969\/revisions"}],"predecessor-version":[{"id":983,"href":"https:\/\/duniacoding.id\/blog\/wp-json\/wp\/v2\/posts\/969\/revisions\/983"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/duniacoding.id\/blog\/wp-json\/wp\/v2\/media\/762"}],"wp:attachment":[{"href":"https:\/\/duniacoding.id\/blog\/wp-json\/wp\/v2\/media?parent=969"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/duniacoding.id\/blog\/wp-json\/wp\/v2\/categories?post=969"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/duniacoding.id\/blog\/wp-json\/wp\/v2\/tags?post=969"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}