PHP LUMEN RESOURCE RELATIONSHIP
PHP LUMEN RESOURCE RELATIONSHIP
Hai sobat koding, kali saya akan memberikan sebuah tutorial php menggunakan resource relationship. berikut adalah langkah langkahnya
Tutorial ini melanjutkan project dari tutorial sebelum nya dengan nama ‘PHP Lumen
Authorization. Pada tutorial ini kita akan menambahkan fitur relationship antara model (tabel).
Tujuan praktek ini adalah untuk:
1. Memahami konsep relationship
2. Mampu implementasi fitur relationship
Harus menyelesaikan dulu modul dengan judul ‘PHP Lumen Authorization’.
Menambahkan Fungsi Public Read
Untuk menambahkan fungsi public read all, mari kita ikuti langkah-langkah berikut ini:
1. Buka file routes/web.php, tambahkan code dibawah ini:
2. Buat file controller baru dengan nama
app/Http/Controllers/PublicController/PostsController.php, kemudian tambahkan code
dibawah ini:
3. Buka file app/Models/Post.php, tambahkan code dibawah ini sebelum penutup Class:
4. Buka file app/Models/User.php, tambahkan code dibawah ini sebelum penutup Class:
5. Buka url http://localhost:8000/public/posts?page=1 di postman:
6. Buka url http://localhost:8000/public/post/2 di postman:
Implementasi Fitur Comment
Sekarang kita akan mengimplementasikan fitur comment, yaitu user bisa memberikan komentar pada salah satu post. Untuk mengimplementasikan fitur ini dibutuhkan 2 endpoint yaitu.
- Endpoint untuk create comment
- Endpoint untuk get comment based on post. List komentar nya harusmengandung object user
Pertama kita pastikan terlebih dahulu telah memiliki tabel comment dan model comment, jika belum ada anda bisa melakukan migrasi terlebih dahulu, buat model comment nya dan buat routing untuk akses endpointnya, jika teman-teman mengikuti tutorial ini dari awal tentu telah memilki tabel comment yang telah kita buat pada tutorial sebelum-sebelumnya.
Sekarang kita buat relasi antara model post dengan model comment dengan menambahkan script berikut.
Setelah itu kita lakuan hal yang sama dengan sebelumnya yaitu menambahkan method with pada controller post.
Sehingga respon dari get post nya adalah terdiri dari beberapa comment yang memiliki object user di dalamnya. Namun sebelum melakukan get all post, kita create terlebih dahulu data commentnya seperti berikut.
Lakukan testing di postman dengan memasukkan endpoint http://localhost:8000/public/posts.
Selamat mencoba !
Comments
Post a Comment