method isClean()
Laravel

Pakai method isClean() Untuk Cek Ada Perubahan Pada Data yang Diupdate

method isClean() ini saya pakai pada saat melakukan pengecekan apakah data yang diparsing melalui request ada perubahan. Jika tidak ada perubahan, berarti gak ada yang perlu diproses, dan selanjutnya tinggal diarahkan atau diberikan pesan untuk memberitahukan bahwa tidak ada data yang berubah, sehingga proses update tidak dilakukan.

Untuk lebih jelasnya saya coba berikan contoh kode pada suatu controller pada bagian proses update

public function update(Request $request, $siswa)
    {
        $rules = [
            'name' => 'max:255',
            'gender' => 'max:255|in:male,female',
            'kelas' => 'in:a,b,c',
        ];

        $this->validate($request, $rules);
        $siswa = Siswa::findOrFail($author);

        $siswa->fill($request->all());
        if($siswa->isClean()){
            return echo('At least one value must change');
        }
        $siswa->save();
        return echo "success";
    }

Di dalam proses ini, saya contohkan untuk melakukan update data siswa. request yang dikirim meliputi nama siswa, gender dan kelas. Kemudian pada data siswa yang dimaksud, kita melakukan proses pengecekan terlebih dahulu dengan menggunakan metode isClean(). Jika ternyata tidak ada perubahan, maka akan dikembalikan dengan pesan bahwa harus paling tidak ada satu nilai inputan yang berubah. Sedangkan jika ada satu saja nilai yang dikirimkan berubah, maka dilakukan proses penyimpanan data yang diupdate tersebut.

Metode isClean(), jika kita mengacu pada dokumentasi berikut https://laravel.com/api/5.6/Illuminate/Database/Eloquent/Model.html#method_isClean, digunakan untuk melihat apakah atribut yang diberikan tetap sama atau tidak. Nilai yang dikenakan pada metode ini adalah boolean yang berarti bisa bernilai true atau false.

method isClean()

Nah dengan metode isClean(), maka kita bisa melakukan efisiensi dengan memilah apakah kita harus melakukan save atau tidak.

Oke semoga tulisan ini dapat berguna bagi anda.

Avatar
Artha Nugraha Jonar
Saat ini bekerja di perusahaan logistik. Sedang belajar bahasa pemrograman komputer. Hobi jalan-jalan, makan dan bersepeda.
http://www.arthanugraha.com

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

This site uses Akismet to reduce spam. Learn how your comment data is processed.