Assalamualaikum Warahmatullahi Wabarakatuh.
Kali ini kita akan membahas tentang salah satu fitur yang ada di Laravel yaitu Observer. Mungkin beberapa dari teman – teman ada yang sudah mengetahui atau menggunakan fitur ini.
Bagi teman – teman yang belum tahu tentang fitur ini, yuk langsung kita bahas saja.
Apa itu Observer?
Observer di dalam framework Laravel merupakan fitur yang digunakan untuk mengaitkan kode atau logic dalam event yang ada pada Eloquent.
Bila kita lihat pada dokumentasi Laravel,
If you are listening for many events on a given model, you may use observers to group all of your listeners into a single class. Observer classes have method names which reflect the Eloquent events you wish to listen for. Each of these methods receives the affected model as their only argument.
Kita disarankan menggunakan Observer jika mempunyai banyak event pada Eloquent. Dengan Observer, kita bisa membuat kode pada controller lebih clean.
Eloquent events
Model Eloquent mempunyai beberapa event yang memungkinan kita untuk terhubung ke beberapa momen dalam siklus Model tersebut.
Beberapa event yang ada pada Model :
- Retrieved. event ini dijalankan ketika model diambil dari database.
- Creating. seperti namanya, Ya, event ini dijalankan saat pembuatan sebuah model dan sebelum disimpan ke dalam database.
- Created. event ini dijalankan saat model telah berhasil disimpan ke dalam database.
- Updating. event yang dijalankan saat perubahan sebuah model dan sebelum selesai disimpan ke dalam database.
- Updated. event ini dijalankan saat proses perubahan sebuah model dan selesai disimpan ke dalam database.
- Saving. event ini dijalankan sebelum proses creating atau updating terjadi.
- Saved. event ini dijalankan ketika proses created atau updated telah selesai.
- Deleting. event yang terjadi saat sebuah model akan dihapus
- Deleted. event ini akan dijalankan saat model telah terhapus
- Restoring. event ini akan dijalankan saat mengembalikan model yang terhapus. Namun, hanya dapat digunakan ketika kita mengimplementasikan soft-delete
- Restored. event ini akan dijalankan saat proses pengembalian model yang terhapus telah selesai.
Keuntungan menggunakan Observer?
- Kode pada Controller menjadi lebih rapi.
- Kode kita jadi lebih maintainable.
- Tidak menuliskan kode yang berulang. (reuseable code)
Sekian pengenalan tentang Laravel Obsever. Terimakasih untuk teman – teman yang telah membaca dan mohon maaf jika terdapat kekurangan ataupun kesalahan dalam penulisan di atas.
Wassalamualaikum Warahmatullahi Wabarakatuh.
Pingback: Belajar Laravel: Membuat Observer - Kawan Koding