Eager Loading merupakan salah satu fitur Laravel yang akan sangat membantu kita dalam pengolahan data yang memiliki relasi antar tabel. Anggap saja pada contoh kali ini kita memiliki 2 buah tabel pada database yaitu users dan posts, dimana satu users bisa memiliki banyak posts, coba perhatikan contoh tabel di bawah ini,,,
tabel users
id | name |
---|---|
1 | Rossi |
2 | Marquest |
3 | Ronaldo |
tabel posts
id | user_id | title |
---|---|---|
1 | 2 | Cara Membuat Rendang Semangka |
2 | 1 | Pesona Alam Minang Kabau |
3 | 1 | Nikmatnya Sup Kuah Capucinno |
4 | 3 | Sakarek Ula Sakarek Baluik |
5 | 2 | Belajar Bahaso Minang |
Yang menjadi pembahasan nya adalah, bagaimana kita bisa mendapatkan data users berdasarkan kata kunci yang ada di kolom title tabel posts, misalkan kita akan mencari semua users yang memiliki posts dengan kata kunci "minang".
Dengan adanya fitur Eager Loading pada Laravel, maka dengan kondisi di atas kita cukup menulis code seperti ini,
public function cari($q = 'minang') { $users = App\User::with(['posts' => function ($query) { $query->where('title', 'like', '%'.$q.'%'); // }])->get(); dd($users); // Rossi dan Marquest }
Masih banyak lagi fitur2 Laravel lainnya yang bisa kita gunakan dalam proses pengembangan sebuah aplikasi, jika ada pertanyaan silahkan tinggalkan di kolom komentar atau bisa hub saya melalui kontak yang tersedia.
Assalamualaikum Wr. Wb