Pada tutorial sebelumnya Cara Menginstal dan Konfigurasi InfyOm generator sudah kita lakukan. Saatnya kita melaju ke hal yang lebih dalam lagi yaitu membuat sistem CRUD ‘Create, Read, Update dan Delete’ laravel seutuhnya tanpa ngoding dan tanpa harus sakit kepala memikirkan algoritma.

Tentunya untuk membuat sebuah sistem CRUD, kita harus tau komponen atau model apa saja nantinya yang harus ada didalam sistem.

Seperti pada contoh, saya membuat sistem CRUD Toko Barang, tentu hal yang pasti ada dalam sistem tersebut adalah pertama Barang atau data barang. komponen barang ini nantinya akan kita jadikan Model, kemudian pada sistem, Model ini bisa ditambah, dilihat/dibaca, diperbarui, ataupun dihapus.

Sistem kita juga perlu sistem Authentikasi, Pengelolaan user/pengguna. Framework Laravel sendiri sudah ada fitur untuk menambahkan Authentekasi langsung lewat terminal. dimana caranya bisa dilihat langsung di halaman dokumentasi Authentication Laravel

Karena kita sudah menginstal InfyOm generator, jadi fitur authentikasi sudah otomatis ada. Kita tidak perlu lagi menambahkan fitur Authentikasi secara manual karena sudah otomatis dibuatkan oleh InfyOm Generator

Jadi yang perlu menjadi perhatian kita disini hanyalah bagaimana cara men-generate atau membuat Model Barang secara otomatis menggunakan Generator InfyOm

Sebelum mulai kita harus memastikan konfigurasi database project laravel sudah benar. Edit file .env yang berada di root project jika anda masih merasa belum melakukannya. masukan nama database, username dan password untuk mengaksesnya

env database konfigurasi
.env

Model CRUD

Biasanya untuk membuat sebuah sistem CRUD untuk setiap Komponen/Model kita harus membuat route, sebanyak 4 buah untuk masing-masing fungsi CRUD (create,read,update,delete). Kemudian membuat file migrasi dan model, kemudian membuat Controller yang berperan sebagai tempat logic atau tempat algoritma dari CRUD yang akan dibuat.

Membuat Model CRUD tidak selesai ketika kita sudah berhasil membuat dan mengetikan kode di dalam controller, kita juga harus membuat tampilan Front-end dari Model CRUD yang kita buat. Pada laravel, kita menggunakan Template Blade untuk membuat tampilan menjadi lebih dinamis dan menarik

Rata-rata untuk membuat sebuah CRUD untuk satu model saja, seorang yang sudah berpengalaman menggunakan laravel bisa menghabiskan waktu satu jam atau lebih untuk aplikasi sederhana. jangan tanya lagi untuk pemula, bisa saja waktu yang dibutuhkan tidak lagi beberapa jam, tetapi hari

Sedangkan membuat sebuah Model CRUD dengan InfyOm generator, kita tidak perlu membuat route, file migration dan model. Tidak ada Controller dan algoritma yang harus kita pikiran dan kita juga tidak harus pusing-pusing memikirkan tampilan pada blade karena semuanya sudah ditangani oleh InfyOm generator

Kemudian waktu rata-rata yang dibutuhkan oleh InfyOm generator adalah kurang dari 5 menit, entah anda pemula maupun berpengalaman.

InfyOm Generator membuat CRUD tanpa ngoding dengan waktu kurang dari 5 menit

 

Membuat CRUD Model lewat InfyOm Generator

Untuk membuat sebuah CRUD untuk Model kita memerlukan teminal, command line atau cmd untuk melakukannya. Ketikan perintah dibawah pada root project laravel untuk membuat sebuah CRUD sesuai nama Model yang diinginkan

infyom membuat model scafolding

kemudian kita akan ditampilkan dengan pilihan seperti gambar dibawah, artike dari gambar adalah Infyom meminta untuk memasukan field apa saja yang nantinya akan ada pada Model yang akan kita buat.

infyom database tipe

name db_type html_type options


name berarti nama field, contoh: ‘nama,stok atau harga’


db_type berarti tipe field yang akan dibuat, contoh :

‘string,25’ sama artinya dengan $table->string(‘field_name’, 25) atau sama dengan tipe data varchar dengan panjang 25 karakter

Dibawah ini adalah daftar table, db_type yang bisa digunakan

db_typeLaravel DatabaseSQL
string$table->string(‘field_name’)varchar
string,100$table->string(‘field_name’, 100)varchar(100)
text$table->text(‘field_name’)text
enum,red,blue,green$table->enum(‘field_name’, [‘red’, ‘blue’,’green’])ENUM(‘red’,’blue,’green’)
integer$table->integer(‘field_name’)int
integer:unsigned:foreign,table_name,id$table->foreign(‘field_name’)->references(‘id’)->on(‘table_name’)filed_name int, 
FOREIGN KEY (‘filed_name’) 
REFERENCES table_name(‘id’)
string,50:unique$table->string(‘field_name’)->unique()varchar(25) UNIQUE

html_type berarti, tampilan form input yang nantinya akan digunakan untuk menginput maupun mengedit data. Hal yang perlu diperhatikan adalah, html_type harus sesuai dengan db_type yang dipilih, jika pada db_type adalah int maka html_type juga harus int, agar tidak terjadi kesalah tipe data

Daftar html_type Infyom generator

Tipe Input HTMLhtml_type
texttext
textareatextarea
emailemail
datedate
numbernumber
passwordpassword
file (partially supported)file
select
select,value1,value2,value3 select,label1:value1,label2:value2,label3:value3
select,Daily,Weekly,Monthly select,Sunday:0,Monday:1,Tuesday:2
checkbox
checkbox,value
checkbox
checkbox,yes
checkbox,1
radio
radio,label1,label2
radio,label1:value1,label2:value2

radio,Male,Female
radio,Yes:1,No:0
toggle switchtoggle-switch

 


options adalah pengaturan tambahan setiap filed yang akan dibuat, daftar option yang bisa digunakan ada beberapa seperti pada table dibawah

optionsArti
smembuat filed tidak bisa di search/cari
f membuat field tidak dapat diisi
ifagar field tidak diminta dalam formulir
iiagar field tidak ditampilkan dalam tampilan indeks
ivagar field tidak ditampilkan di semua tampilan

 


Pada Contoh saya membuat Model Barang, yang nantinya akan bersisi field, nama,harga dan stok

nama, akan bertipe string dengan maksimum 50 karakter, harga dan stok akan bertipe integer

Jadi saya akan meng-inputkan: ‘nama string,25 text’, untuk options saya kosongkan

field database type

Kemudian seperti yang dilihat pada gambar diatas, kita diharuskan menginputkan pilihan Validation untuk field yang akan kita buat

Daftar Validation InfyOm generator

  • required
  • min:5
  • email
  • numeric

Kita juga bisa menggabungkan beberapa validasi menjadi satu seperti ‘required|min:5|max:255’

berarti field, harus diisi, harus unik, minimal 5 dan maksimal 255 karakter

validasi field

Setelah Selesai, kita akan akan menginputkan kembali field kedua dan seterusnya yang ingin dibuat

 

mengisi field

Setelah Semua field, sudah diinputkan klik saja enter 2 kali. Maka otomatis, Infyom akan membuatkan beberapa file, seperti file Migrasi, model, Controller dan lain-lain

infyom membuatkan file untuk CRUD

jangan lupa untuk mengetik yes, ketika laravel infyom meminta migrasi database

Selesai

Sistem CRUD Barang sudah bisa kita akses dengan cara mengaktifkan server, php artisan serve

php artisan serve

Buka localhost kemudian membuat membuat akun pada menu register, karena kita belum mempunyai akun sama sekali.

register

Setelah itu, kita akan melihat Menu Barang, lengkap dengan sistem CRUD yang dimilikinya

infyom generator sukses