Langsung ke konten utama

RESOURCE RELATIONSHIP LARAVEL

 

RESOURCE RELATIONSHIP

 

Dalam memanfaatkan database, dikenal ada relasi antar entity atau antar tabel. Penggunaan fitur ini pada database konvesional membutuhkan penggunaan perintah SQL yang relatif panjang dan juga membutuhkan penanganan dari program yang membutuhkan program yang rumit pula. Artikel ini membahas mengenai Relationship pada Eloquent yang memudahkan penggunaan database yang memiliki relationship.

Pertama kita tambah kan kode untuk menghubungkan antara model user dan model post dengan relasi on to many.

 

public functon post(){
    return $this->hasMany(Post::class, 'user_id');
}

Lalu tambahkan kode ini pada model post,

public functon user(){
    return $this->belongsTo(User::class, 'user_id');
}

Lalu buka post controller untuk user reader pada folder App\Http\Controllers\Publics\PostController.php, kemudian modifikasi response di controller dengan menambahkan method with(), lalu kita modifikasi terlebih dahulu function index.

 

Lalu akses endpoint http://localhost:8000/public/posts?page=1 maka respon akan menjadi seperti berikut.

 

Tampilannya akan menampilkan detail dari user. Sekarang kita coba akses endpoint nya untuk setiap id

Implementasi Fitur Comment

Selanjutnya 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 harus
    mengandung object user

Sekarang kita buat relasi antara model post dengan model comment dengan menambahkan kode berikut.

 

Selanjutnya kita akan lakuan sama seperti sebelumnya yaitu menambahkan method with pada controller post.

Lalu kita create terlebih dahulu data comment nya seperti berikut.


 

Lakukan test di postman dengan memasukkan http://localhost:8000/public/posts.

 

Selesai.

Komentar

Postingan populer dari blog ini

MEMBUAT VALIDATION & ERROR HANDLING

    VALIDATION & ERROR HANDLING Kita akan membuat service menggunakan  PHP   Lumen  yang bisa melakukan  handling Validation dan Negative Case .  Tujuan praktek ini adalah untuk : 1. Mampu implementasi validation menggunakan Lumen 2. Mampu melakukan Negative Case handling menggunakan Lumen 3. Mampu memberikan informasi yang baik dan relevan ketika mengalami error validasi dan error negative case Endpoint Saat ini kita sudah mengimplementasikan endpoint yang akan kita gunakan, yakni seperti ini: Beautify Response Pada Fungsi Read All Implementasi fungsi ini adalah fungsi index di  PostsController.php  :   1. Saat ini kalau kita memanggil endpoint  http://localhost:8000/posts , maka tampilan   response nya akan menjadi seperti ini : 2. Kalau melihat dari response nya ada beberapa data yang tidak kita perlukan, seperti: first_page_url, from, last_page, to. Pertama kita akan mengubah respons...

Membuat Lumen Uplod Media

Membuat Lumen Uplod Media Pada tutorial ini kita akan membahas mengenai upload media dan upload video kedalam tabel posts. Fitur upload Image di Post Untuk mengimplementasikan fitur upload image kita harus menambahkan satu field ke tabel posts. Caranya ketik di command Prompt /CMD : php artisan make:migration add_image_to_posts_table Selanjutnya buka filenya di Database/Migration/.. , dan tambahkan kode berikut: Selanjutnya ketik di command Prompt /CMD : php artisan migrate Dengan begitu sudah bertamah satu kolom/field di table posts. Selanjutnya buka file App/Http/Controllers/PostsController.php dan tambahkan kode berikut di function store : Silakan test di postman store dan isi form datany, dan jika berhasil maka responnya seperti ini. Fitur get image Post Pertama tambahkan kode di routes/web.php Selanjutnya tambahkan method baru "image" di App/Http/Controllers/PostsController.php. Kemudian lakukan test di postman get dengan parameter image name sesuai dengan nama image yan...

MEMBUAT CILENT APPLICATION

  CILENT APPLICATION   Kali ini Kita akan membuat aplikasi (Client) yang bisa melakukan request ke Web Service (API) menggunakan PHP Lumen.   Sebelumnya kita membuat aplikasi Web Service menggunakan Lumen. Saat ini kita akan membuat aplikasi yang bisa mengakses Web Service menggunakan Lumen (kita sebut dengan aplikasi Client).   Aplikasi Lumen Service App Sebagai Web Service API   Untuk implementasi Lumen Client App, kita kan membuat aplikasi Web Service CRUD akses Rest API menggunakan Dummy API yang di akses di   http://dummy.restapiexample.com/   Pertama kita harus mengintal projek lumennya dengan composer. silakan ketik di cmd/Command Prompt : composer create-project --prefer-dist laravel/lumen [NAMA_PROJECT] Contoh : composer create-project --prefer-dist laravel/lumen LumenClientApp Untuk menjalankan kode ini harus memiliki koneksi internet dan tunggu hingga proses instalasi selesai.   untuk menjalankan s...