Tutorial Laravel 11 : #2 Route

Struktur Folder Laravel

Setelah selesai menginstal Laravel, pada folder yang sudah kita tentukan berisi berbagai folder dan file seperti gambar berikut ini :

Folder tersebut adalah :

 

 

Dasar Route di Laravel 11

Pada materi sebelumnya telah membahas konsep MVC (Model-View-Controller), berikut ditampilkan kembali diagram alur kerja MVC di Laravel :

Routing

mungkin bahasa mudahnya Routing ini merupakan alamat permalink URL yang ada di browser yang nantinya akan diredirect ke Controller seketika saat URL tersebut diakses atau eksekusi, jadi di dalam Routing ini otomatis harus sudah didaftarkan terlebih dahulu alamat-alamat permalink-nya.

Route atau Routing berperan sebagai penghubung antara user dengan keseluruhan framework. Dalam Laravel, setiap alamat web yang kita ketik di web browser akan melewati route terlebih dahulu. Route-lah yang menentukan ke mana proses akan dibawa, apakah ke Controller atau ke View.

Misal di website kita ada halaman About Us (http://namadomain.com/about-us) dan Contact Us (http://namadomain.com/contact-us).

about-us dan contact-us ini yang harus didaftarkan di dalam Routing agar setiap ada pengunjung yang mengakses halaman tersebut secara otomatis akan di proses oleh Controller, di dalam Controller ini bisa kita atur ingin di tampilkan apa atau konten yang seperti apa setelahnya.

Halaman-halaman website yang tidak di daftarkan di dalam file Router secara otomatis akan menampilkan halaman error (404 | Not Found)/

 

Controller

Controller berfungsi sebagai logika atau halaman yang memproses data dimana isi prosesnya tergantung dari halaman website yang di daftarkan di file Router.

Jika di dalam file Router yang kita daftarkan ialah halaman about-us, maka nantinya Controller ini akan bekerja untuk memproses data agar dapat menampilkan isi konten dari halaman About Us, begitu juga dengan halaman Contact Us dan halaman-halaman lainnya.

Baca Juga  Tutorial Laravel #19 : Encrypt dan Decrypt Laravel

Jadi, jika dilihat alurnya kurang lebih sebagai berikut :

Alamat URL -> Routing -> Controller -> Output

 

 

Route Bawaan Laravel

Secara default, Laravel sudah menyertakan 1 route bawaan. Sebelum masuk ke kode program, mari kita lihat hasil tampilan dari route ini.

Kita buka folder/direktori instalasi Laravel yang sudah kita install di CMD, jalankan server PHP dengan perintah php artisan serve. Kemudian buka web browser dan ketik alamat http://localhost:8000 atau http://127.0.0.1:8000. Hasil tampilan ini sebenarnya berasal dari sebuah proses route di dalam Laravel.

 

Pada saat kita mengetik alamat http://localhost:8000 dan menekan tombol Enter, maka sebuah kode program route Laravel akan dipanggil untuk memproses alamat tersebut.

Kode program ini berada di dalam file routes/web.php. Silahkan buka file ini:

Secara bawaan, file routes/web.php sudah berisi beberapa baris kode program :

<?php

use Illuminate\Support\Facades\Route;


Route::get('/', function () {
    return view('welcome');
});

Di baris 3 terdapat perintah untuk proses import Route facade. Secara sederhana, facade adalah istilah Laravel untuk menyebut class bantu.

Route class terdiri dari berbagai method yang akan kita bahas secara bertahap. Dalam penggunaan normal, perintah di baris 3 ini tidak perlu kita utak-atik.

Kode program dari route.php ini terdapat di 3 baris terakhir, yakni :

Route::get('/', function () {
    return view('welcome');
});

Inilah kode program yang dipanggil untuk memproses alamat http://localhost:8000. Secara sederhana, penulisan route Laravel mengikuti format berikut :

Route::jenis method(alamat_URL , proses_yang_dijalankan)

Pertama, kita harus menulis perintah ‘Route::‘. Di dalam konsep OOP PHP, tanda :: merupakan perintah untuk mengakses sebuah static method (atau bisa juga static property) kepunyaan sebuah class, yang dalam contoh ini adalah milik class Route.

Selanjutnya diikuti dengan penulisan <jenis method>. Jenis method adalah ‘cara sebuah URL diakses’. ‘get‘ merupakan salah satu jenis method yang akan dijalankan ketika alamat URL diakses secara normal.

Baca Juga  Tutorial Laravel 11 : #1 Cara Install Laravel di Windows

Maksud “normal” di sini adalah dengan mengetik langsung alamat web di address bar web browser atau ketika kita men-klik sebuah link. Nantinya terdapat jenis method lain seperti post, put dan delete.

Untuk saat ini bisa disimpulkan bahwa jika ingin membuat route untuk sebuah alamat web, method yang dipakai adalah get.

Setelah itu dalam tanda kurung terdapat  alamat URL, ini merupakan alamat URL yang akan di proses oleh route.

Dalam contoh route bawaan Laravel, alamat URL ini berisi 1 karakter saja, yakni: ‘/‘. Tanda forward slash (/) dipakai untuk merujuk ke alamat home atau root, yakni alamat ketika web dipanggil tanpa menulis tambahan apapun seperti http://localhost:8000.

Terakhir terdapat inputan untuk proses_yang_dijalankan, pada bagian inilah kita menulis kode program yang akan dijalankan oleh route, yakni apakah memanggil view, memanggil controller atau hal lain.

Dalam contoh bawaan Laravel, proses ini berbentuk anonymous function, atau kadang disebut sebagai closure atau callback function :

function () {
    return view('welcome');
}

Anonymous function atau closure adalah sebuah function yang tidak memiliki nama. Umumnya closure dipakai ketika membuat function yang hanya perlu dijalankan 1 kali saja.

Perintah di atas akan menjalankan sebuah View yang bernama ‘welcome’. View ini pada dasarnya berbentuk file php yang akan kita bahas dalam tutorial selanjutnya. Untuk sementara pada tutorial ini menggunakan perintah return view(‘welcome’).

Sebagai kesimpulan, tiga baris kode program yang ada di dalam route.php bisa dibaca: Jika halaman home diakses, jalankan view yang bernama welcome.

Nantinya, format penulisan route bisa lebih kompleks dari ini dan isi file route sendiri tidak hanya berbentuk anonymous function saja, tapi juga bisa nama view, nama controller atau hal lain.

Baca Juga  Membuat Aplikasi Perpustakaan Berbasis Web dengan Laravel dan Bootstrap

Cara Membuat Route pada Laravel 11

Cara Membuat Route di Laravel 8

Untuk membuat route di Laravel, cukup tulis pemanggilan static method Route baru ke dalam file routes/web.php. Sebagai contoh, tulis kode program berikut di bawah route bawaan Laravel :

Route::get('/hello', function () {
    return 'Hello World';
});

Di sini saya menulis ‘/hello‘ sebagai argument pertama method Route::get. Sebelumnya sudah kita pelajari bahwa argument pertama ini adalah tempat untuk <alamat URL>. Jika ditulis seperti ini, maka sebuah route dengan alamat http://localhost:8000/hello sudah bisa diakses. Berikut hasilnya:

Ketika alamat http://localhost:8000/hello diakses, maka perintah return ‘Hello World’ akan dijalankan, hasilnya di web browser tampil teks ‘Hello World’.

Isi dari anonymous function ini juga bisa berbentuk kode PHP biasa, tidak harus perintah return. Sebagai contoh kedua, kita tambahka route baru untuk alamat http://localhost:8000/belajar:

Route::get('/belajar', function () {
    echo '<h1>Hello World</h1>';
    echo '<p>Sedang belajar Laravel</p>';
});

Sekarang isi dari anonymous function terdiri dari 2 buah perintah echo. Keduanya berisi tag <h1> dan <p> yang akan di proses web browser sebagai tag HTML biasa.

Alamat URL di dalam route juga bisa terdiri dari beberapa segmen, seperti contoh berikut:

Route::get('/siswa/rpl/agus', function () {
    echo '<h2 style="text-align: center"><u>Welcome Agus</u></h2>';
});

Jika ditulis seperti ini, maka alamat URL-nya adalah http://localhost:8000/siswa/rpl/agus.

Intinya route akan menampung semua alamat yang diketik di web browser, lalu menampilkan hasilnya. Dengan route, alamat sebuah URL tidak harus bersesuaian dengan file fisik yang ada di server.

Ketika mempelajari PHP dasar, kita biasa pahami bahwa jika ditulis alamat http://localhost/belajarphp/coba.php, maka bisa ditebak itu akan mencari file coba.php di folder htdocs/belajarphp.

Namun di Laravel, alamat URL ini hanyalah ‘alamat virtual’. Jika ditulis http://localhost:8000/siswa/rpl/agus, maka belum tentu di server terdapat folder dan file dengan nama siswa/rpl/agus.php, karena alamat tersebut sebenarnya di proses oleh route.

Demikian tutorial tentang Route pada Laravel 11, selanjutnya kita akan mempelajari tentang Membuat Controller pada Laravel 11.

Related Post

2 Trackbacks / Pingbacks

  1. Tutorial Laravel 11 : #1 Cara Install Laravel di Windows - agussuratna.net
  2. Tutorial Laravel 11 : #9 Form Validasi pada Laravel - agussuratna.net

Leave a Reply

Your email address will not be published.


*


error: Ga bisa dicopy