Tutorial CRUD File Laravel 6 dengan Validasi

Februari 10, 2020


Estimasi Waktu Baca: 4 menit

Validasi merupakan langkah penting dalam membuktikan kebenaran suatu data. Validasi sering digunakan saat kita menginputkan suatu data, yang mana data yang akan diinputkan tersebut haruslah sesuai dengan bagaimana aturan, kriteria, atau prosedur yang kita tentukan.

Misalnya, kita mengharuskan user saat mendaftar akun diwajibkan mengisi nama, jika kosong maka sistem tidak mau menerima data tersebut, atau misal juga bisa nama dari user minimal diawali huruf kapital, tidak boleh diberi tanda baca khusus, minimal 6 huruf, dan lain-lain. Itulah contoh-contoh dari penerapan validasi.

Nah sekarang bagaimana jika penerapan validasi tersebut diterapkan pada projek Laravel? Tentunya laravel sudah mengantisipasi hal ini. Dalam laravel sudah tersedia yang namanya validasi beserta pesan error yang muncul jika data yang diinputkan tidak sesuai apa yang kita mau.

Dalam kesempatan kali ini kita akan melanjutkan materi dari pembahasan artikel Tutorial CRUD File di Laravel 6


Install dan Konfigurasi Projek Laravel 6

Bagi kalian yang sudah pernah mengikuti artikel Tutorial CRUD File di Laravel 6 atau sekedar pernah mendownload programnya bisa dilewati saja. Namun jika belum kalian bisa mendownload programnya di sini

Download

Ekstrak projek CRUD Filenya dan masuk ke dalamnya.

Eeeiitssss jangan keburu dijalankan

Kita update dulu via composer

composer update

Setelah itu buat database di phpmyadmin dengan nama sesuka kalian. Kemudian cari file .env jika tidak ada rename file .env.example menjadi .env.

Sesuaikan bagian berikut dengan info user DBMS dan nama database yang barusan kalian buat ya.

Terakhir, migrasikan tabel-tabelnya.

php artisan migrate

Sekarang boleh kalian jalankan.

Ah iya saya lupa generate keynya.

php artisan key:generate

Oke selesai, sekarang buka alamat berikut localhost:8000/buku/


Membuat CRUD File dengan Validasi

Pertama buka model Buku di app/Buku.php. Definisikan tiap kolom tabel bukus di sini.

Selanjutnya, langsung saja buka file BukuController.php dan edit pada fungsi store() menjadi seperti ini.

Serta fungsi update() seperti ini.

Kemudian pada view tambah.blade.php dan ubah.blade.php, atribut required pada tiap inputan kita hapus dulu, untuk memastikan validasi sisi server memang berjalan dengan baik.


Penjelasan Kode Beserta Langkah-Langkahnya:

Data yang diinput melalui form pada view tambah.blade.php akan di validasi terlebih dahulu menggunakan fungsi validate(). Data judul_buku, nama_penulis, dan tanggal_terbit_buku memiliki aturan tidak boleh kosong, begitu juga data sampul_buku dan sampel_buku

Namun pada sampul_buku dan sampel_buku saya tambahkan aturannya, untuk sampul_buku, gambar data akan sukses dimasukkan jika berekstensi jpeg, png, jpg, gif, svg, psd dan ukuran maksimal file gambar adalah 2 MB.

Sama juga untuk sampel_buku, dokumen akan berhasil diinputkan jika berekstensi doc, docx, pdf, odt, xls, csv dan maksimal berukuran 2 MB.

Kemudian file disimpan di folder uploads/gambar (untuk file gambar) dan uploads/dokumen (untuk file dokumen).

Terakhir value atau nilai setiap data kita simpan dalam database.


Testing Validasi

Sekarang coba diuji, kosongkan field judul buku, nama penulis, dan tahun terbit buku atau pada field upload gambar isi dengan file ekstensi dokumen (pdf, docx, xls, doc, csv). Sebaliknya pada field upload dokumen isi dengan file ekstensi gambar (jpg, jpeg, png, svg, psd).

Apa yang terjadi?

Pastinya akan muncul pesan error. Pesan tersebut muncul akibat data yang kita inputkan tidak sesuai dengan aturan yang kita tentukan pada masing-masing data.

Ini juga berlaku pada fitur update yang juga sudah kita ubah sebelumnya.

Mungkin di sini ada yang heran kenapa error pada program CRUD File milik kalian berbahasa inggris. Sedangkan pada contoh di atas bahasa indonesia? Kalian bisa mempelajarinya di artikel berikut Mengubah Pesan Error Validasi Laravel ke Bahasa Indonesia

Kategori