3 magic dalam Laravel yang wajib kamu ketahui!

Halo semua, pada artikel kali ini aku bakal bahas hal-hal teknis dulu yaa, yaitu 3 magic dalam Laravel yang harus kamu tahu. Artikel ini dibuat karena masih banyak sekali teman-teman saya yang belum memanfaatkan fitur-fitur magic ini. Cekidot..

Accessor

Accessor digunakan untuk memanipulasi data pada suatu atribut ataupun membuat atribut baru berdasarkan atribut lain dari database untuk dijadikan response. Masih bingung yaa? Aku kasih contohnya deh, misal kita punya atribut first_name di database kita yang isinya ribuan baris, dan setiap menampilkannya kamu ingin semuanya selalu dalam keadaan capslock. Melakukan konversi di view sangat tidak disarankan. Jadi pada file Model kita cukup membuat method baru dengan format penamaan get{NamaAtribut }Attribute dengan aturan penulisan NamaAtribut dalam bentuk StudlyCaps dan akan mengacu ke atribut asli di database dalam format snake_case. Setelah itu kita bisa langsung mengakses data seperti biasanya baik melalui view ataupun controller. Selain itu, kita bisa juga membuat atribut baru dengan memanipulasi atribut lain. Contoh kita ingin menambahkan prefix “Rp. ” dan memformat atribut price agar mudah dibaca, tapi kita ingin atribut itu memiliki nama formatted_price dan atribut price tetap memiliki nilai aslinya, disinilah peran accessor dibutuhkan. Langsung lihat contoh dibawah yaa:

Contoh penggunaan Accessor pada Laravel untuk memanipulasi atribut yang sudah ada
Contoh penggunaan Accessor pada Laravel untuk memanipulasi atribut yang sudah ada

Contoh penggunaan Accessor pada Laravel untuk membuat atribut baru
Contoh penggunaan Accessor pada Laravel untuk membuat atribut baru

Mutator

Mutator biasanya digunakan untuk memanipulasi data sebelum disimpan ke dalam database. Yaa bisa dibilang hampir sama dengan accessor bedanya kalau membuat fresh application, mutator bakal lebih cocok digunakan. Jadi kalau yang accessor tadi menampilkan atribut data dalam keadaan sudah dimanipulasi, sedangkan mutator bekerja setiap kali atribut data akan ditambahkan ke dalam database. Coba lihat contohnya yaa:

Contoh penggunaan Mutator pada Laravel untuk memodifikasi atribut sebelum disimpan ke database
Contoh penggunaan Mutator pada Laravel untuk memodifikasi atribut sebelum disimpan ke database 

Eloquent Dynamic Method

Kalau ini sih konsepnya kamu bisa memanggil method yang gak pernah ada sebelumnya. Salah satu contoh penggunaannya sih dalam query where. Cuma kekurangannya dynamic method ini akan selalu mengasumsikan kondisi dengan operator = (sumber kode). Berikut contoh penggunaannya:

Contoh penggunaan eloquent dynamic method pada query builder
Contoh penggunaan eloquent dynamic method pada query builder

Nah mungkin segitu dulu buat artikel kali ini. Kalau ada yg bingung atau mau request pembahasan bisa tulis di kolom komentar yaa. Terima kasih semua.

Don’t forget to share if you like this article 👍

Referensi

Related post