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.
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
Posting Komentar