Assalamu'alaikum Warahmatullahi Wabarakatuh


Pada kesempatan kali ini, Mimin akan menjelaskan tentang Eloquent pada Laravel. Pada postingan sebelumnya, kita telah membahas tentang "Laravel : Edit & Delete Data with DB Facade". Nah pada kesempatan kali ini kita akan membahas alternatif lain untuk berinteraksi dengan Database, kita bisa menggunakan fitur yang secara default ada pada Laravel. Yap 😉 kita akan menggunakan Eloquent, atau dikenal juga dengan ORM (Object Relation Maping) ini merupakan cara lain untuk berinteraksi dengan Database. Ouh iyah sebelum kalian mengikuti tutorial ini Mimin sarankan untuk mengikuti tutorial sebelumnya terlebih dahulu agar kalian semua bisa paham secara utuh tentang materi ini 😄. Karena codingan yang Mimin jelaskan sudah pernah dibuat di postingan sebelumnya.

Oke langsung aja kita ke tutorialnya Sob! 😄

#Apa Itu Eloquent ?

Eloquent merupakan sebuah ORM (Object Relation Maping) yang dimana ini merupakan sebuah fitur bawaan dari Laravel itu sendiri. Singkatnya menurut Mimin Sendiri Eloquent merupakan penyederhanaan bentuk penggunaan Query-query Database. Jadi apabila dijelaskan secara umum, dengan menggunakan Eloquent ini kita akan lebih mudah berinteraksi dengan Database, karena telah disederhanakan oleh Laravel lewat fitur ini. Jika kalian ingin mendalami tentang Eloquent kalian bisa membaca beberapa postingan bermanfaat berikut, "Belajar Dasar Eloquent Laravel" atau "Belajar Eloquent Dasar Laravel".

#Bekerja Dengan Eloquent

Pada kesempatan kali ini kita akan mengubah beberapa isi dari method Controller yang telah kita buat, diantaranya :
  • index
  • store
  • update
  • destroy
Kita akan mengubah cara berinteraksi dengan Database nya saja, jadi yang lainnya tidak perlu ada yang dirubah. Sebelum melakukan itu semua, sesuai dengan namanya yaitu ORM (Object Relation Maping). Pertama kita harus membuat sebuah Model terlebih dahulu, pada Model ini kita akan menampung tabel mana yang akan digunakan dan konfigurasi lainnya, seperti kolom mana saja yang boleh kita isi. Jika kalian masih awal tentang model, dan ingin mengetahuinya kalian bisa kunjungi link berikut ini.

#Membuat Model

Silahkan kalian buka terminal pada Visual Studio Code kalian, atau kalian buka CMD lalu arahkan ke folder project Laravel kalian. Lalu ketikan perintah berikut :

Perintah Untuk Membuat Model

Maka secara otomatis sebuah Model bernama kelas akan terbuat pada project kita.

Lokasi file Model yang Telah Dibuat

Setelah kita membuat Model Kelas, maka kita bisa mengisi model ini dengan tabel apa yang akan digunakan pada Model ini, dan juga mengkonfigurasi kolom mana saja yang bisa diisi oleh user. Silahkan kalian buka file tersebut, lalu isi dengan kode sebagai berikut :

Isi Model Kelas

Setelah kita berhasil membuat Model Kelas, maka kita bisa menggunakan Eloquent sekarang. Karena tanpa membuat Model, kita tidak menggunakan Eloquent, Mengapa ? Karena namanya sendiri merupakan Object Relation Maping 😂 maka kita perlu membuat Model untuk kita gunakan pada Eloquent.

Oke selanjutnya kita akan mengubah isi dari beberapa method yang diatas sudah di mention 😉

1. Index

Kita ubah sedikit pada baris kode yang berhubungan dengan Database milik kita, yaitu baris kode ini 

Tanpa Eloquent

Menggunakan Eloquent

Dengan begini kita akan melakukan hal sama yaitu sama sama memanggil seluruh data yang ada pada tabel t_kelas lalu mengurutkannya berdasarkan nama_kelas.

2. Store

Tanpa Eloquent

Menggunakan Eloquent

Kita memanfaatkan Model Kelas yang telah kita buat sebelumnya, terlihat lebih sederhana bukan ?

3. Update

Tanpa Eloquent

 Menggunakan Eloquent

Dengan menggunakan Eloquent kita tidak perlu menambahkan klausa Where, kita hanya cukup menggunakan klausa find(), jika kita lihat cara ini lebih simpel dan lebih mudah diterapkan dibandingka  menggunakan cara yang lama.

4. Destroy

Tanpa Eloquent

Menggunakan Eloquent

Sama seperti Update, kita harus mencari data berdasarkan Id nya terlebih dahulu, setelah Id nya ditemukan maka kita bisa langsung mendelete data tersebut.

# Eloquent vs Query Builder

Apabila kita perhatikan dengan seksama dan kita hayati secara mendalam ketika menggunakan kedua hal ini, maka kita akan tahu dimanaka letak perbedaan antara kedua hal ini. Menurut Mimin sendiri, perbedaan paling signifikan yang Mimin rasakan adalah perbedaan syntax nya itu Sendiri. Eloquent hadir dengan ciri khasnya, yaitu "simpel & memudahkan" karena selama Mimin menggunakan Eloquent Mimin merasa nyaman dan lebih mudah mengingat syntax Eloquent dibandingkan dengan menggunakan Query Builder bawaan Laravel itu Sendiri 😄.

Tentu bukan berarti Query Builder tidak memiliki kelebihan dibandingkan Eloquent, berdasarkan referensi yang Mimin baca. Dilakukan sebuah eksperimen atau percobaan tentang efisiensi waktu antara kedua cara ini, ternyata setelah dicoba untuk memasukan sebuah data sebanyak 1000 kali kedalam sebuah tabel. Query Builder ternyata lebih cepat dibandingkan dengan Eloquent 😲. Argumen ini Mimin bangun atas referensi dari situs ini.

Belum lagi Query Builder dibangun dengan konsep PDO, yang dimana ini bisa mencegah dari beberapa seranga orang-orang jahil terhadap sistem web kita. Mana yang lebih baik, menurut Mimin sendiri tergantung penggunaannya itu sendiri, jika suka dengan yang simpel dan mudah, maka bisa menggunakan Eloquent 😏. Namun apabila tidak peduli dengan simpel atau mudah nya, dan lebih mementingkan kecepatan & efisiensi waktu, Mimin sarankan untuk menggunakan Query Builder 😉.

Mungkin cukup sekian yang bisa Mimin sampaikan pada postingan kali ini. Sampai Jumpa di postingan berikutnya Sob! 😄

Quotes


Disetiap kekurangan pasti disana ada kelebihan, disetiap kelebihan pasti disana ada kembalian - Zeptian

Wassalamu'alaikum Warahmatullahi Wabarakatuh 

0 Komentar