Post

Laravel and Vuejs #3

Pada article sebelumnya kita sudah mempelajari bagaimana membuat factory, controller, scope, laravel tinker, dan faker. Dan pada article kali ini, kita akan melanjutkan dengan membuat beberapa controller lagi, beserta resource.

Baiklah, kira mulai saja. Pertama - tama, kembali pada command prompt, pastikan active directory sudah pada project "bukutamu" dan ketik perintah " php artisan make:controller Api/ReportSignature ". Setelah berhasil, kembali pada text editor dan buka file ReportSignature.php yang berada pada directory App/Http/Controller/Api dan tambahkan beberapa code seperti pada gambar.

Pada method update tersebut kita menggunakan method flag yang akan kita buat pada model Signature. Maka dari itu, masih tetap apada text editor beralih pada model Signature atau juga file Signature.php dalam directory App. Tambahkan code dibawah scope ignore flag sebagai berikut.

Method ini digunakan untuk melakukan update field "flagged_at" pada table signatures di database.

Selanjutnya, bila dilihat kembali pada controller yang telah kita buat, terdapat "Resource" yang fungsinya adalah sebagai data transformer. Sekarang, kembali pada command prompt dan ketik perintah " php artisan make:resource SignatureResource ". Bila sudah berhasil maka file transformer tadi akan terdapat pada directory App/Http/Resources. Data transform ini gunanya adalah agar structure dari database kita tidak terekspose langsung pada client-side. Baiklah, sekarang kembali pada text editor dan buka file SignatureResource.php pada directory yang telah saya sebutkan tadi dan tambakan code sebagai berikut.

Pada gambar terdapat method "diffForHumans" yaitu sebuah method dari nesbot carbon untuk menampilkan data timestamps (waktu dan tanggal) dengan tampilan yang lebih manusiawi. Setelah web apk ini selesai nanti kita dapat melihat penampilan waktu yang ditampilkan seperti pada facebook (5 menit lalu, 2 jam lalu, dsb).

Bila diperhatikan juga, pada gambar terdapat code "avatar" dimana kita tidak membuatnya pada struktur data database kita. Untuk itu mari kita beralih pada model Signature kembali atau juga fila Signature.php dan tambahkan code dibawah method flag yang baru saja kita buat tadi dengan code sebagai berikut.

Dapat dilihat bahwa atribut avatar pada transform tadi dihasilkan dari perubahan attribut field email yang kita ganti dengan avatara yang didapat dari www.gravatar.com.

Selanjutnya, yang akan kita lakukan adalah menambahkan backend route sebagai persiapan homepage kita. Tetap pada text editor, buka file web.php yang terdapat pada directory routes dan tambahkan route sebagai berikut.

Jangan lupa untuk merubah route lain yang terdapat di file tersebut menjadi komentar, karena untuk sementara ini tidak digunakan.

Terakhir, kita akan membuat BackEnd Controller. Kembali ke command prompt dan ketik perintah " php artisan make:controller SignaturesController ". Setelah selesai, kembali pada text editor lalu buka file controller yang baru saja dibuat. Letaknya di directory App/Http/Controllers kemudian menuju file SignaturesController.php. Kemudian tambahkan beberapa code sebagai berikut.

Baiklah, pada article kali ini kita sudah mempelajari bagaimana membuat resource, dan melakukan transform data. Untuk selanjutnya akan saya lanjutkan di article berikutnya. Sekian yang dapat saya sampaikan, selebihnya saya ucapkan terimakasih.