Tahun baru, skill baru! 🚀. Masukkan kupon "skill2025" untuk diskon 30% di kelas apa saja

Seeding laravel 5.7

maaf nih saya mau nanya kalau cara untuk tambahain banyak data sekaligus menggunakan seeding laravel itu gimana ya? maaf saya nanya, soalnya saya sudah baca Documentation dan masih kurang paham, disamping itu juga b.inggris saya kurang, mohon bantuanya ya teman"

avatar cylops
@cylops

25 Kontribusi 1 Poin

Diperbarui 6 tahun yang lalu

2 Jawaban:

Jawaban Terpilih

Step by step berdasarkan [link](dokumentasi seeding laravel) https://laravel.com/docs/5.7/seeding [/link]:

  1. bikin file seedernya, contoh seed user <pre> php artisan make:seeder UsersTableSeeder</pre> yang ada di metode run akan dijalankan saat run command db:seed

  2. Di metode run kamu bisa menambahkan field dan data yang dimau, contoh mengisi nama, email dan password <pre> public function run() { DB::table('users')-&gt;insert([ 'name' =&gt; str_random(10), 'email' =&gt; str_random(10).'@gmail.com', 'password' =&gt; bcrypt('secret'), ]); } </pre>

2.2 Dengan cara diatas kamu baru membuat satu user, tentu cape bikin satu per satu kalau banyak, karena itu kita bisa memanfaatkan <a href='https://laravel.com/docs/5.7/database-testing#writing-factories '>https://laravel.com/docs/5.7/database-testing#writing-factories </a> File Factory dibikin di database/factories/namanya.php, sebagai contoh disana ada "database/factories/UserFactory.php" disitu sudah ada cara membuat kolom untuk user, untuk table lainnya bisa mengikut pola yang sama. Sekarang karena factory/pabrik nya sudah ada tinggal kita pake loop untuk membuat langsung banyak

<pre> public function run() { //ini contohnya kamu bikin postingan bukan user factory(App\User::class, 50)-&gt;create()-&gt;each(function ($user) { $user-&gt;posts()-&gt;save(factory(App\Post::class)-&gt;make()); }); } </pre>

  1. Menjalankan seed dengan command

<pre> php artisan db:seed //semua file seed php artisan db:seed --class=UsersTableSeeder //satu file seed specifc </pre>

Ini versi video <a href=' https://sekolahkoding.com/kelas/tdd-test-driven-development-di-laravel/video/seeding-data-dan-intro-testing '>kelas contoh seeding data di laravel</a>

avatar hilmanski
@hilmanski

2699 Kontribusi 2140 Poin

Dipost 6 tahun yang lalu

Oke bang thanks banget, atas bantuanya dan penjelasannya

avatar cylops
@cylops

25 Kontribusi 1 Poin

Dipost 6 tahun yang lalu

Login untuk ikut Jawaban