Laravel 12 CRUD (MySQL + JWT)
#9 Membuat Model User dan Migration (JWT)
users. Sebenarnya Laravel sudah menyediakan migration untuk tabel
users dan model User secara default. Kita hanya perlu memastikan migration sudah dijalankan dan model sudah dikonfigurasi dengan benar untuk JWT. Yuk kita cek dan siapkan!
Langkah 1: Cek Migration Users yang Sudah Ada
1 Laravel secara otomatis menyediakan migration untuk tabel users. Buka folder database/migrations. Cari file dengan nama seperti 2014_10_12_000000_create_users_table.php. Ini adalah migration bawaan Laravel.
Isi migration tersebut sudah mencakup kolom yang diperlukan: id, name, email, email_verified_at, password, remember_token, dan timestamps.
php artisan migrate:install dan php artisan make:migration create_users_table. Tapi secara default, Laravel sudah menyediakannya.
Langkah 2: Jalankan Migration (Buat Tabel Users)
2 Jika sebelumnya kamu belum menjalankan migration, sekarang waktunya. Di terminal, jalankan:
Perintah ini akan membuat semua tabel yang belum ada, termasuk tabel users, password_reset_tokens, dan sessions (jika ada).
.env dan pastikan MySQL berjalan.
Langkah 3: Cek Model User dan Konfigurasi JWT
3 Model User berada di app/Models/User.php. Di artikel sebelumnya (#8), kita sudah menambahkan trait JWTSubject dan implementasi method getJWTIdentifier() dan getJWTCustomClaims(). Pastikan model User sudah seperti berikut:
Jika belum, tambahkan seperti di atas.
Langkah 4: Tambahkan User Contoh (Seeder)
4 Untuk memudahkan pengujian autentikasi, kita bisa membuat user contoh. Laravel sudah menyediakan seeder untuk user. Jalankan perintah:
Atau jika ingin membuat user secara manual, gunakan Tinker:
Ini akan membuat user dengan email admin@example.com dan password password. Keluar dari Tinker dengan exit.
bcrypt(). Laravel akan otomatis melakukan hashing saat menyimpan jika menggunakan Hash::make() atau bcrypt().
Langkah 5: Verifikasi Tabel Users di phpMyAdmin
5 Buka phpMyAdmin (http://localhost/phpmyadmin), pilih database siswaapi_db. Pastikan ada tabel users dengan kolom yang sesuai. Klik tabel users untuk melihat data. Jika sudah ada user yang ditambahkan, berarti siap.
Langkah 6: Uji Coba Membuat Token JWT
6 Untuk memastikan semuanya berfungsi, kita bisa mencoba membuat token menggunakan Tinker. Jalankan:
Jika muncul string panjang (token JWT), berarti konfigurasi berhasil. Token ini bisa digunakan untuk mengakses endpoint yang dilindungi.
Ringkasan Langkah
- ✅ Cek migration users bawaan Laravel.
- ✅ Jalankan migration:
php artisan migrate - ✅ Pastikan model User sudah mengimplementasikan
JWTSubject. - ✅ Tambahkan user contoh via seeder atau Tinker.
- ✅ Verifikasi tabel users di phpMyAdmin.
- ✅ Uji pembuatan token dengan Tinker.
📌 Ingat: Tabel users adalah komponen kunci untuk autentikasi. Jaga keamanan password dan token.
(Link akan aktif saat artikel sebelumnya dan selanjutnya terbit)