Tutorial CRUD Laravel 7 - Migration Dan Seeder
Ini adalah seri lanjutan dari Belajar membuat CRUD dengan Laravel 7. Sesuai list belajar kita kemarin, kali ini kita akan belajar Membuat Migration dan Seeder.
Silahkan teman-teman jalankan terlebih dahulu phpMyAdmin dan projek laravelnya, sudah tau kan cara menjalanka server laravelnya? Yups tinggal ketikkan perintah “php artisan serve”.
Note :
Masuk terlebih dahulu di file laravel-nya.
Buka phpMyAdmin dan projeknya di web browser.
Sekarang kita akan membuat migrationnya, buka cmd ke-2 kemudian ketikkan perintah “php artisan make:migration create_peserta_table –create=peserta”
Perintah tersebut dapat kita artikan “php artisan buatkan file yang bernama_peserta_table –buatnamatabel=peserta”. Tekan enter dan jika “Created Migration: ….” itu artinya migrationnya berhasil dibuat. Untuk melihat migration yang kita buat tadi, silahkan teman-teman buka terlebih dahulu projeknya di text editor favorite teman-teman. Kemudian buka folder “database > migrations”. Disana terdapat 3 migration yang mana 2 migration default dan 1 migration yang telah kita buat tadi.
Seperti inilah tampilan migration baru pada laravel 7, kita akan menambahkan beberapa field untuk meyimpan data nantinya.
Untuk sementara kita isikan saja fieldnya seperti ini dan jika nanti akan ada perubahan(Pada tabel ini) kita tinggal tambahkan lagi field baru disini.
Note :
$table->tipe_data(‘nama_field’, panjang_nilai);
$table->timestamps(); = Untuk menambahkan 2 field yaitu created_at dan updated_at,
yang mana kedua tabel ini berfungsi untuk melihat kapan sebuah data dibuat(created_at) dan kapan data itu diperbaharui
(updated_at). Dan kita akan menggunakan ke-2 filed tersebut namun jika teman-teman tidak akan menggunakannya teman-teman
tinggal hapus saja (Opsional).
$table->id() = Alias dari .$table->unsignedBigInteger('user_id')
Kita juga akan memodifikasi migration users untuk membuat login nantinya.
*Migration users yang sudah di modifikasi.
Setelah persiapan migration selesai kita tinggal jalankan migration tersebut. Terlebih dahulu kita cek database “crud_laravel”-nya.
*Database crud_laravel kosong tanpa ada tabel apapun
Untuk menjalankan migration kita tinggal ketikkan saja perintah “php artisan migrate” (Kemudian tekan enter).
Jika “Migration tabel created …”, itu artinya migration kita berhasil di jalankan, kita coba cek kembali database crud_laravel kemudian refresh/browse.
*Setelah di refresh. Gambar (1.9)
*Tabel Peserta
*Table Users. Gambar(1.11)
Pada gambar diatas(1.9) databasenya sudah berisi tabel-tabel yang sudah kita buat tadi. Keren bukan fitur magic yang satu ini?. Jadi apa sih migration itu? Migration adalah sebuah fitur dari laravel untuk mengelola database supaya lebih mudah. Contohnya kita akan mengganti nama field atau menambahkan beberapa field baru, kita hanya perlu menambahkan di file migrationnya jadi kita tidak perlu mengubah di phpMyAdmin secara manual lagi. – Perspektif mimin.
Selanjutnya kita akan berkenalan dengan Seeder. Untuk membuat seeder kita hanya perlu mengetikkan perintah “php artisan make:seeder nama_seeder”. Contoh kita akan membuat seeder untuk users.
Nanti akan dibuatkan sebuah seeder baru yang bernama “UsersTableSeeder”, file seeder terletak di folder “database > seeds”.
*Tampilan Seeder baru.
Kita akan memasukkan sebuah data untuk tabel users, baris perintah untuk membuat data kita simpan di function run().
Note:
Disini mimin akan menambahkan 1 buah data untuk tabel users, jika teman-teman ingin memasukkan data ke tabel lainnya tinggal ganti saja nama_tabel “DB::table(‘nama_tabel’)” atau buat seeder baru. Samakan urutan fieldnya sesuai yang ada pada tabel users, untuk password mimin menggunakan “Hash::make(‘password’)” atau kita juga bisa memakai “bcrypt(‘password’)”, untuk pemakaian hash atau bcrypt itu terserah selera teman-teman saja.
Note :
Teman-teman bisa melihat Gambar(1.11) yang mana di tabel users belum ada datanya.
Untuk menjalankan seedernya kita perlu daftarkan terlebih dahulu seeder yang akan kita jalankan di file induk “DatabaseSeeder.php”.
*Di file ini teman-teman bisa mendaftarkan banyak seeder sekaligus, yang nantinya ketika semua seeder akan dijalankan maka kita hanya butuh 1 perintah saja yaitu “php artisan db:seed”. Namun jika teman-teman tidak mendaftarkannya di file ini, teman-teman harus menjalankan perintah seedernya satu persatu. Dengan perintah “php artisan db:seed –class=nama_seeder”.
Kita akan coba jalankan seedernya, dengan mengetikkan perintah “php artisan db:seed”.
*Database seeding Completed …” Jika seperti ini maka seedernya berhasil dijalankan, dan jika teman-teman mengalami error bahwa “nama_seeder tidak ditemukan” maka teman-teman harus menjalankan perintah “composer dump-autoload” yang mana perintah ini, berfungsi untuk memuat ulang autoload. Dan jika sudah menjalankan “composer dump-autoload” teman-teman jalankan kembali perintah “php artisan db:seed”-nya.
Kemudian cek kembali tabel usersnya.
*Tabel users telah terisi dengan data yang kita buat tadi di file UsersTableSeeder.
Gimana gak kalah kerennya kan fitur seeder ini? Jadi apa itu seeder? Seeder adalah sebuah fitur untuk mengisi data ke database dengan tujuan data tersebut sebagai uji coba aplikasi. Karena kita juga akan membutuhkan beberapa data untuk menguji aplikasi yang kita buat. – Perspektif mimin.
Sebenarnya masih ada 1 fitur yang tak kalah menarik lainnya yaitu “Faker” namun kita akan membahas fitur ini di lain kesempatan. Oke, mimin rasa tutorialnya sudah cukup mudah untuk dapat dimengerti, namun jika teman-teman ada yang mengalami error atau ada yang kurang paham dari penjelasan yang mimin berikan, teman-teman bisa tanyakan langsung di kolom komentar.
Apa selanjutnya?
Note :
Jika terdapat kesalahan dalam pengertian, silahkan teman-teman memberikan komentar yang membangun.
Posting Komentar untuk "Tutorial CRUD Laravel 7 - Migration Dan Seeder"