Belajar Routing Di Laravel

Pengetahuan dasar dalam sebuah framework yang mesti dipahami adalah routing di laravel atau route di laravel. Routing adalah cara modern dalam pengembangan aplikasi berbasis web, cara ini lebih aman dan efisien.

Pengertian Routing Di Laravel

Namun pertama-tama yang mesti kita bahas adalah apa itu routing atau route di laravel?

Baca juga: Mengenal Laravel Lebih Dalam

Kalau kita artikan bisa berarti rute atau jalan menuju suatu tempat, begitu juga route atau routing di laravel adalah sebuah jalan menuju suatu halaman tertentu.

Routing di laravel atau route adalah sebuah url, atau alamat menuju halaman tertentu agar bisa di akses melalui web browser sehingga memudahkan kita saat berpindah halaman, dari halaman A ke halaman B atau sebaliknya dan seterusnya.

Konfigurasi Route Di Laravel

Route di laravel sendiri dibagi menjadi beberapa bagian dan masing-masing bagian tersebut memiliki peranan tersendiri.

Letak file route ada di folder routes/ dan didalamnya terdapat 4 file route yaitu, api.php, channels.php, console.php, dan web.php.

Untuk akses halaman di web browser kita fokus ke web.php, dari sini kita akan mulai belajar hal dasar tentang impelementasi route di laravel.

Belajar Dasar Route

Langsung saja kita praktek bagaimana penulisan route untuk membuat sebuah halaman dapat akses di web browser.

Pada saat awal membuka file routest/web.php maka yang akan nampak di text editor adalah kode dibawah ini:

<?php
use Illuminate\Support\Facades\Route;
...
Route::get('/', function () {
    return view('welcome');
});

Kode Route::get('/') diatas adalah halaman pembuka Laravel saat pertama kali kita install laravel. Seperti dibawah ini tampilannya.

tampilan awal laravel

Halaman pembuka diatas dirender oleh Laravel ke browser, dimana file pembuka tersebut terletak di resources/views/welcome.blade.php, blade adalah template engine Laravel. Kita tidak akan membahas blade, blade akan kita bahas lebih spesifik di artikel lain, karena kalau di satu artikel ini akan panjang nantinya :p

Menampilkan kata di browser

Selanjutnya kita akan coba membuat sebuah kata yang akan ditampikan di browser. Silahkan buka file routes/web.php lalu tambahkan kode dibawah ini:

Route::get('/halo-dunia', function() {
    return '<h1>Halo dunia</h1>';
});

Karena penulis menggunakan php artisan server maka url diatas bisa diakses seperti dibawah ini:

http://127.0.0.1:8000/halo-dunia

Maka akan tampil seperti gambar dibawah ini:

belajar routing di laravel

Ada beberapa route yang tersedia di Laravel, berikut ini route tersebut:

Route::get($uri, $callback);
Route::post($uri, $callback);
Route::put($uri, $callback);
Route::patch($uri, $callback);
Route::delete($uri, $callback);
Route::options($uri, $callback);
Route::resource($uri, $callback);

Seperti yang kita ketahui, GET adalah route yang hanya bisa di akses langsung ke browser, sedangkan POST untuk mengirim data form ke server. Mari kita fokus ke GET sebagai bagian dari tutorial dasar ini.

Menambahkan parameter di URL

Apakah route hanya mampu menampilkan URL statis? ternyata tidak, kita dapat mengirim parameter di URL dan akan dieksekusi di browser, berikut ini contohnya.

Tambahkanlah kode dibawah ini:

Route::get('/halo/{nama}', function($nama) {
    return '<h1>Halo ' . $nama . '</h1>';
});

Lalu ketikan URL di browser seperti dibawah ini:

http://127.0.0.1:8000/halo/Aris

Maka akan tampil seperti gambar dibawah ini:

parameter di route

{nama} adalah sebuah parameter yang akan dikirim ke variable $nama.

Lalu bagaimana jika ternyata tidak ada parameter Aris di URL? coba saja anda hilangkan parameter Aris di browser, maka akan ada error 404, karena parameter {nama} tidak memberi nilai ke variable $nama, sehingga tidak ada halaman yang dituju.

Lantas bagaimana agar tidak terjadi 404? tambahkan saja nilai default pada variable nama dan berikan tanpa tanya “?” diparameter nama apabila tidak ada parameter di URL, seperti kode dibawah ini:

Route::get('/halo/{nama?}', function($nama = 'Tanpa Nama') {
    return '<h1>Halo ' . $nama . '</h1>';
});

{nama?} akan memberitahu browser agar meskipun tanpa parameter tetap akan di eksekusi di browser karena di variable $nama sudah kita isi nilai default yaitu Tanpa Nama. Maka apabila di browser kita buka seperti URL dibawah ini:

http://127.0.0.1:8000/halo

Di browser akan tampak Tanpa Nama, seperti gambar dibawah ini:

nilai default route di laravel

Sekian pembahasan tentang routing di laravel, semoga bermanfaat, dan akan kita bahas lebih dalam lagi tentang laravel.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar anda diproses.