Laravel Flash Message – Melanjutkan tulisan yang sebelumnya, di aplikasi yang saya buat di github, selain saya menambahkan package Datatables, saya juga menambahkan dengan package Flash Message. Package ini berfungsi untuk memberikan feed back terhadap pengguna terhadap action yang diberikan oleh pengguna. Misalkan ketika saya menyimpan sebuah record, maka nantinya saya butuh informasi apakah submit record yang saya berikan tersebut tersimpan ataukah gagal.
Okelah kita langsung masuk ke pembahasan. Tentunya “peralatan” yang kita butuhkan adalah framework laravel itu sendiri. Dan tentunya yang tidak kalah penting adalah package Flash Message nya. Kali ini Flash Message yang saya gunakan adalah package buatan Laracast. Karena saya pernah mencoba beberapa Flash Message, saya menyimpulkan Flash Message Laracast ini adalah Flash Message yang paling mudah implementasinya
Langsung saja kita install package Laracast Flashnya dengan membuka file composer.json dan menambahkan pada bagian require script
[courcecode]
laracasts/flash: ^1.3
[/sourcecode]
Kemudian install package tersebut dengan perintah composer update dan tunggu sampai instalasi berhasil. Kemudian buka config/app.php dan tambahkan providers
[courcecode]
Laracasts\Flash\FlashServiceProvider::class,
[/sourcecode]
Dan tidak lupa untuk menambahkan alias terhadap provides yang kita buat tadi
[courcecode]
Flash => Laracasts\Flash\Flash::class,
[/sourcecode]
Langkah berikutnya yaitu menambahkan script untuk pemanggilan Flash Message tersebut di view, saran saya silahkan tambahkan pada layout tampilan yang digunakan agar cukup mengetikkan di satu file tersebut. Tambahkan script pemanggilan di layouts/app.blade.php
[courcecode]
@include(‘flash::message’)
[/sourcecode]
Kemudian untuk pemanggilan melalui Controllernya, masih menggunakan controller artikel sebelumnya yaitu TaskController.php, pada function store, buat kondisi jika insert database berhasil maka akan muncul Flash Message sukses, maka ketikkan script
[courcecode]
if(Tasks::create($data)){
\Flash::success(‘Add Tasks Success’);
}else{
\Flash::info(‘Add Tasks Failed’);
}
[/sourcecode]
Untuk type dan dokumentasi lainnya silahkan di lihat dokumentasi resminya disini. Biasanya yang paling sering digunakan adalah success dan info.
Dalam implementasinya, saya tidak banyak mengalami kesulitan. Dan mungkin banyak yang bertanya setelah melihat script yang saya upload di github, kenapa dalam pemanggilan Flash dengan perintah \Flash::success(‘Add Tasks Success’); menggunakan tanda back slash(“\”) di depan alias Flash. Hal ini dikarenakan dalam penggilan alias Flash ini tidak didefinisikan namespace Flash Massage milik laracast. Jadi dengan tanda “\” ini berfungsi untuk pemanggilan class Flash di namespace Global. Hal ini dapat juga disiasati dengan menambahkan script
use Laracasts\Flash\Flash;
Jika ditambahkan script di atas, maka pemanggilan class Flash ini tanpa awal awalan back slash (“\”) sehingga scriptnya menjadi
Flash::success('Add Tasks Success');
Semoga bermanfaat
