Fokus: Backend - Melakukan migrate & seed pada tabel user di database.

Github Repo: https://github.com/ahmadfadlydziljalal/yii2-reactjs

Melanjutkan dari artikel sebelumnya : Membuat RESTFul API menggunakan Yii2 (basic template) sebagai backend dan React JS sebagai frontend — FullStackOverflow Developer (Part 3.1) ,

Kita akan membuat tabel user + manajemen otentikasi dan otorisasi sebagai bonus dari Yii2 admin. Arahkan direktori aktif ke folder backend menggunakan terminal. Pastikan punya koneksi internet yang cukup stabil. (Meski cuma dari tethering hape, Telkomsel lumayan stabil di tempat saya).

#Perintah 1
cd backend/
#Perintah 2
composer require mdmsoft/yii2-admin "~2.0" -vvv
Pesan berhasil dari composer akan tampil di terminal.

Kita perlu melakukan konfigurasi pada Yii2 supaya Yii2-admin ini berjalan sesuai dengan yang Kita harapkan. Kita perlu menambahkan beberapa line code pada file console.php dan web.php:

  • `modules\admin`
  • `components\authManager`
  • `as access`
Rubah konfigurasi di web.php dan console.php

Oke, lakukan migration dan biarkan Kita menikmati hasil karya Om Munir.

Eksekusi migration di terminal.

Hasilnya bisa kita pastikan dengan melihat list tabel pada database aplikasi.

Tabel hasil generate migration Yii2 — Admin.

Kemudian; supaya lebih mudah, Kita biarkan dan pasrahkan user management diambil alih oleh Yii2 admin dengan cara merubah konfigurasi di config/web.php sebagai berikut.

Rubah konfigurasi di web.php

Oke. Jalankan backend server, jika belum jalan.

php yii serve

Untuk test awal dari perubahan konfigurasi Yii2-admin, kita buka browser dan ketik link halaman berikut. http://localhost:8080/index.php?r=admin/user/signup . Kemudian kita daftarkan beberapa user yang kita butuhkan. Sebagai contoh, Saya akan mendaftarkan SuperAdmin sebagai user dengan hak akses tak terbatas pada sistem Kita.

Halaman Signup untuk Backend

Jika berhasil, Kita akan diarahkan kembali ke halaman Awal Yii2-Basic. Untuk melihat apakah user SuperAdmin Kita sudah masuk ke dalam Database, ketikkan alamat link ini pada browser; http://localhost:8080/index.php?r=admin/user . Hasilnya bisa dilihat seperti pada gambar berikut.

Halaman List User pada Yii2-Admin

Sebagai latihan dan juga keseragaman dengan apa yang penulis praktikan, silahkan membuat beberapa user seperti penulis lakukan.

Halaman List User pada Yii2-Admin

Kurang afdhol juga kalau kita tidak coba login ke dalam backend sistem Kita. Yii2 admin sudah menyediakan bebearapa fitur keren. Coba akses deh via browser: http://localhost:8080/index.php?r=admin/user/login . Atau supaya lebih maksimal, kita ubah linknya saja lansgung pada layout backend web. Filenya ada di backend/views/layout/main.php

Rubah Link dari /site/login ke /admin/user/login . Begitu juga dengan logout.

Klik link Login, jika tidak ada yang salah dengan konfirgurasi, Kita bisa masukkan username dan password salah satu user yang sudah Kita buat tadi.

Halaman Login dari Yii2
Redirect ke halaman utama setelah login.

Biar lebih berasa, Kita gunakan class User dari Yii2. Tambahin kode berikut pada file ```backend\site\index.php```

Menambahkan informasi username yang sedang login.
Username di akses oleh Yii::$app->user

Silahkan eksplorasi Yii2-admin ini, karena library ini cukup powerfull untuk User Management. Untuk tutorial ini, Kita hanya memanfaatkan otentikasinya saja. Ini halaman repo github nya: https://github.com/mdmsoft/yii2-admin, dan jangan lupa kasih star ke repo ini.

Artikel selanjutnya:

https://ahmadfadlydziljalal.medium.com/membuat-restful-api-menggunakan-yii2-basic-template-sebagai-backend-dan-react-js-sebagai-2797aaed5fe8

--

--

Ahmad Fadly Dzil Jalal

Mencari rezeki dengan membuat aplikasi komputer. (PHP <Yii2, CI>, ReactJS, Android- Java Native ). Tawaran / salary bagus, kontak Saya: dziljalal1@gmail.com