Apa itu Eloquent ORM ?
Eloquent ORM merupakan fungsi ActiveRecord pada Laravel yang cantik dan sederhana untuk dapat bekerja dengan database Anda. Setiap tabel database memiliki “Model” yang sesuai digunakan untuk berinteraksi dengan tabel tersebut.
Untuk dapat menggunakan Eloquent ORM pada Laravel pastikan kamu sudah melakukan konfigurasi database melalui file .env
yang tersedia pada project Laravel kamu
Bentuk-bentuk ORM pada Laravel
Berikut adalah bentuk-bentuk ORM yang terdapat pada Laravel
Mendapatkan semua data pada tabel
Untuk mendapatkkan semua data pada tabel database, dapat berbentuk seperti berikut
Product::all();
# SELECT * FROM products
Mari kita bedah syntax diatas tersebut,
- Pada
Product
merupakan nama model yang kita gunakan dan tentunya model tersebut memiliki tabel database ya - Lalu pada
all()
merupakan fungsi untuk mendapatkan semua data yang ada pada tabel database.
Mendapatkan data berdasarkan id
Untuk melihat detail data dan juga melakukan edit dan delete, kita perlu mendapatkan data yang kita mau dengan parameter data uniknya sebagai contoh yaitu id pada produk. Berikut adalah contoh ORM untuk mendapatkan data berdasarkan id
Product::find(1);
# SELECT * FROM products WHERE id=1;
Mari kita bedah syntax tersebut,
- Seperti contoh sebelumnya, kita perlu memanggil file modelnya terlebih dahulu.
- Kemudian pada
find(1)
, yaitu fungsi untuk mencari berdasarkan id yang dimana contohnyaid
tersebut ialah1
Mendapatkan data berdasarkan kondisi kolom tertentu
Pada kasus tertentu kita diperlukan untuk mendapat data berdasarkan value pada kolom tertentu misalkan pada produk, kita ingin menampilkan produk yang memiliki harga tertentu. Berikut adalah contohnya
Product::where('price', '>', 100000);
# SELECT * FROM products WHERE price > 100000;
- Seperti biasa kita perlu memanggil modelnya terlebih dahulu,
- Dilanjut dengan
where
dengan parameter yang diinginkan, misalkan pada contoh kita ingin mencari produk yang memiliki harga diatas 100000 maka kita menuliskan('price', '>', 100000)
Custom query builder
Pada beberapa kasus, kita hanya memerlukan untuk menampilkan data hanya dari sebagian kolom yang diinginkan saja. Untuk contohnya bisa dilihat pada syntax berikut
DB::table('products')
->select('product_name', 'price')
->get();
Syntax diatas kita memanggil tabel products
dan memanggil kolom product_name
dan price
saja.
Itu saja yang bisa dicatat pada kesempatan kali ini, semoga catatan ini berguna bagi kita semua. Terimakasih