Bentuk pengambilan data paling sederhana yang dapat Anda lakukan di sini adalah dengan melakukan hal berikut:
$travelBills = Travelbill::with(['code','allowance'])->get();
Ini adalah Eager Loading dan akan melakukan tiga kueri:
- Muat semua tagihan perjalanan
- Muat semua kode yang memiliki kunci asing yang cocok dengan semua ID tagihan perjalanan dan tetapkan ke setiap model perjalanan
- Lakukan hal yang sama dengan uang saku
Apa yang akan Anda dapatkan pada akhirnya bahwa setiap model Travelbill sudah memiliki model Kode dan Tunjangan terkait, memungkinkan Anda untuk bekerja seperti:
echo $travelBill->cost->SekInklMoms;
untuk salah satu Travelbills yang Anda muat. Perhatikan beberapa hal dalam kueri pertama:
- Bill perjalanan tidak difilter, kami sedang memuat semuanya saat ini.
- Kami melakukannya hanya , belum tentu efisien. Saya sarankan pertama-tama merasa nyaman dengan hubungan yang dimuat sebelum masuk ke hal-hal seperti bergabung (yang mematahkan semangat Eloquent ORM dalam hal apa pun)