Membuat CRUD Pada Laravel 5.5 dengan Visual Studio Code

Selamat Datang, pada tutorial kali ini saya akan mencoba membuat langkah-langkah dalam membuat Contoh sederhana CRUD pada framework Laravel 5.5.

Laravel 

Untuk membuat project dengan laravel 5.5 hal hal berikut yang harus terpenuhi :

  1. PHP >= 5.6.4
  2. OpenSSL PHP Extension
  3. PDO PHP Extension
  4. Mbstring PHP Extension
  5. Tokenizer PHP Extension
  6. XML PHP Extension
  7. Composer
  8. Koneksi internet yang stabil
  9. Editor yang saya gunakan visual studio code (terdapat builtin terminal untuk mempermudah menggunakan command dalam laravel)

Step 1: Create a Laravel project

setelah semua kebutuhan spesifikasi server terpenuhi, maka sekarang kita sudah siap untuk memulai proses instalasi laravel, kita akan membuat proyek laravel dengan nama laravelCRUD dan menyimpan proyek ini pada folder htdocs, silahkan buka CMD, arahkan posisi PATH di htdocs dan ketikkan langkah berikut pada command prompt (terminal), dalam hal ini saya menggunakan system operasi OSX tetapi tenang tidak berbeda dengan yg menggunakan system operasi lain.

akan membutuhkan waktu kira-kira 2 menit untuk mendownload menggunakan composer.

Jika Sudah Selesai download maka akan ada notifikasi seperti berikut pada baris terakhir dari tampilan console (CMD)

Menandakan sudah berhasil download Laravel dengan versi terakhir

Sekarang saatnya mencoba menjalankan service laravel dengan mengetikkan perintah di console seperti berikut :

pastikan anda telah masuk ke dalam folder laravelCRUD yang ada di dalam htdocs

atau jika menggunakan visual studio code silahkan buka project dengan file-> open atau seperti tampak gambar :

untuk menjalankan/menampilkan integrated terminal yang ada di visual studio code dapat di tampilkan dari menu view->integrated terminal seperti tampak di gambar :

dan jika sudah muncul terminal bawaan visual studio code kita tidak perlu repot lagi untuk masuk ke folder tertentu untuk menjalankan perintah bawaan laravel.

tinggal langsung kita ketikkan perintahnya saja .

maka kita dapat mengakases website dengan alamat ip local atau localhost:8000

Step 2: Edit .env file for database configuration

di dalam project root folder, terdapat file yang di sebut .env,  Kita Membutuhkannya untuk membuat konfigurasi  database. Saya menggunakan MySQL database.

dalam konfigurasi tersebut saya tidak menggunakan password (password kosong) .

Step 3: Use migrations provided by laravel to create users and password_resets table

sebelum melakukan migrate pastikan service database dan apache sudah berjalan di system operasi, buatlah database dengan nama laravelCRUD dapat menggunakan phpmyadmin atau tools database lainnya .

sekarang ketikkan perintah berikut di terminal :

setelah migrate selesai (mungkin ada pesan error di sana 🙂 tetapi abaikan dulu ), kita cek database dengan phpmyadmin maka akan muncul 2 tabel seperti gambar berikut :

jika hanya muncul 2 tabel berarti ada error kita fix dulu errornya pertama-tama drop dulu tabel yang sudah di migrate kemudian kita telusuri error yg tampak seperti di gambar :

setelah browsing dapat pemecahan dari link : https://laravel-news.com/laravel-5-4-key-too-long-error

di dalam website tersebut secara umum di jelaskan bahwa mulai laravel 5.4 database mysql atau mariadb sudah mendukung utf8mb4 atau dapat menyimpan emoji. ini hanya dapat berjalan pada aplikasi baru pada database mysql 5.7.7 atau ke atas tidak perlu ada perubahan karena sudah support secara otomatis.

karena saya menggunakan versi mysql di bawahnya maka terjadi errot tersebut, kita cek versi mysql dengan menggunakan phpmyadmin

versi database server saya adalah 5.6

untuk selanjutnya agar tidak error dan pada saat migrate muncul 3 tabel maka langkah adalah dengan merubah file App/Providers/AppserviceProviders.php

 saya menambahkan baris 19 dan 5 (menggunakan class facades dan memberikan parameter default stringlength 191

Kemudian jalankan lagi perintah  :

maka kali ini akan berhasil dan tanpa error

kita cek kembali tabel di database dengan phpmyadmin

sudah muncul 3 tabel yaitu migrations, password_resets, dan tabel users yang di generate secara otomatis. untuk membuat login dapat melihat postingan saya sebelumnya.

Step 4: Create a controller file for our CRUD operations.

ketikkan di terminal perintah berikut untuk membuat crudController

sekarang cek file controller yang sudah otomatis di generate di folder /http/Controller/CrudController.php

Step 5: Create a model file for CRUD operations.

ketikkan di terminal perintah berikut untuk membuat model Crud

Sekarang cek file migration yang sudah di generate di folder /database/migrations/xxxx_xx_xx_create_cruds.php

Step 6: Edit crud migration file and create the required fields for the database.

sesuaikan file migrate dengan field-field yang dibutuhkan untuk pembuatan tabel dalam database.

setelah merubah pada function up schema database silahkan jalankan kembali perintah migrate :

jika sukses kita dapat melihat tabel cruds pada database dengan struktur sebagai berikut :

Step 7: Create views for set up a form

buatlah file master.blade.php pada folder Resources/Views/master.blade.php

Sekarang buatlah folder crud di dalam folder views dan buatlah file berikut ini :

  1. index.blade.php
  2. create.blade.php
  3. edit.blade.php

Step 8: Create a form in create.blade.php

membuat form input dengan nama file create.blade.php

Step 9: Setup a route for the request handling.

merubah atau seting routing untuk crudController

semua fungsi crud ada di controller CRUDController

Step 10: Edit CRUDController File

disini di dalam CRUDController.php terdapat fungsi create yang berisi mengembalikan view crud.view

tampilan dari routing ini dapat di akses melalui browser :

Step 11: Add CSRF token and set the post route of the form.

menambahkan CSRF token dan mengatur routing dari form

kita tambahkan csrf_field agar form aman dari serangan dalam aplikasi web kita

Step 12: Code the store function and use Crud model to insert the data

code fungsi menggunakan Crud model untuk insert data

disini kita akan membuat protected field dengan variabel $filable di dalam file model Crud

dengan metode ini hanya field title dan post yang dapat di isi dari form input dan akan masuk ke database.

Step 13: Code index() function in the CRUDController File.

code index() pada file CRUDController

Step 14: Need to update index.blade.php

mengedit file index.blade.php

 

Step 15: Add Edit and Delete Button in the index.blade.php

langkah selanjutnya menambahkan tombol edit dan delete di index.blade.php

silahkan cek di browser dengan url localhost:8000/crud

Step 16: Create an edit function to pass the data to the edit view.

membuat function edit data pada CRUDController.php

Step 17: Create an edit view.

membuat tampilan form edit view dengan nama edit.blade.php

Step 18: Code update() in the CRUDController.

membuat function update di CRUDController.php

Step 19: Create a delete form to delete the data.

membuat form delete data pada index.blade.php

Step 20: Code the destroy() method in the CRUDController.

membuat function destroy pada CRUDController.php

Output

routing list yang ada di laravel project kita

Untuk Download file code program silahkan Like fanspage kami

Facebook Comments