Mengenal Route Laravel
Pengertian Route pada Laravel
Routing atau Route dalam laravel berfungsi untuk menghubungkan antara pengguna
dengan aplikasi. Setiap request / permintaan pada Laravel akan melalui route
misalkan anda mengetik alamat di url web browser kemudian anda tekan tombol
enter atau tekan tombol cari maka yang dieksesu pertama kali adalah route
sebelum menampilkan hasil.
Route tersebut yang akan menentukan apa yang akan dilakukan, karna route tugas
nya adalah mengatur apakah menampilkan data, mengubah data, menghapus data dan
lainnya.
Setiap route didaftarkan pada sebuah file pada project Laravel yang telah
terinstal, file tersebut berada pada lokasi ‘nama_project/routes/web.php’,
saya harap anda selalu mengeingat file ini karena kita akan sering
menggunakannya.
Route Default Laravel
Saat project Laravel dijalankan pertama kali dengan menjalankan perintah php
artisan server akan muncul sebuah halaman dashboard yang merupakan yang
merupakan halaman default bawaan Laravel. Halaman itulah yang yang ditampilkan
oleh route bawaan Laravel. Berikut adalah source dari routing yang berada pada
file /routes/web.php :
Keterangan gambar diatas :
ketika kita ketik alamat http://localhost:8000 kemudian tekan enter, maka
kode program yang ada pada route laravel akan dipanggil untuk memproses pada
alamat tersebut. Kode program ini berada di dalam file routes/web.php.
file bawaan dari routes/web.php sudah terisi beberapa baris kode
program (perhatikan gambar diatas) :
- Di baris ke-tiga terdapat baris coding untuk import Route facade. facade merupakan nama class yang ada pada laravel dan berkaitan dengan penggunaan routing.
- selanjtunya pada baris ke-5 sampai dengan ke-14 merupakan komentar yang menjelaskan isi dari file tersebut.
HTTP Request Pada Laravel
Pada pemrograman website, biasanya terdapat dua jenis request method sering
digunakan pada protocol HTTP, yaitu GET dan POST. GET request
biasanya digunakan saat kita akan membuka suatu halaman
website,sedangkan POST request dapat kita digunakan saat akan mengirim data
melalui form. Facade class Route() digunakan untuk menangani request
dari browser baik berupa method GET ataupun POST request.
Selain method GET dan POST request untuk mendapatkan dan mengirim
resource (data) pada protocol HTTP , ada juga yang dinamakan PUT/PATCH untuk
melakukan update data suatu kemudian DELETE digunakan untuk hapus data
(resource). untuk mengakses suatu resource pada webs dengan
menggunakan method dikenal dengan istilah REST (Represenyarional State
Transfer).
Oleh sebab itulah pada facade class Route laravel tersedia juga fungsi untuk
menangani request tersebut. Berikut adalah fungsi yang dapat kita
gunakan pada facade class Route:
Route::get(),
Route: :post(),
Route::put(),
Route: :patch(),
Moute: :delete)
pada gambar diatas terdapat fungsi get() (pada nomor 1) pada class Route()
menerima beberapa parameter. Pada nomor 2 berisi segmen URI yang akan
dicocokkan polanya. pada fungsi get() diatas menerima garis miring (/)
yang merupakan pola URI yang ingin dicocokkan. artinya fungsi get() di atas
akan menangani request terhadap homepage/halaman utama.
Pada nomor 3 merupakan parameter kedua dari fungsi get(), parameter kedua
tersebut diisi dengan anonymous function atau disebut juga dengan closure.
Closure merupakan fungsi yang tidak mempunyai nama seperti fungsi-fungsi PHP
pada umumnya. Pada closure tersebut kita akan membuat perintah untuk
menangai request yang datang. Badan fungsi pada closure diatas. Berisi
perintah:
return view(' welcome');
Perintah tersebut meminta agar laravel menampilkan view dengan nama bernama
welcome. fungsi view() pada laravel adalah perintah untuk menampilkan suatu
file view (terdapat pada folder resources/views). Laravel merupakan
framework yang menggunakan konsep M-V-C, yang salah satunya huruf “V” adalah
View. Fungsi view() menerima parameter berupa text yang merupakan nama file
pada folder views yang akan ditampilkan.
File view welcome bernama welcome.blade.php dan tersimpan sebagai
resources/views/welcome.blade.php. kenapa ada embel-embel
blade pada file php? blade adalah template engine pada laravel.
Membuat Route Halaman "About"
sampai dengan saat ini kita baru memiliki satu buah route, yaitu route halaman utama (homepage). kita akan mencoba untuk menambahkan route halaman "about"?, langkah-langkahnya adalah sebagai berikut :Langkah 1:
Buka file web.php (masih ingat kan letak web.php?), kemudian tambah route baru dengan nama
use Illuminate\Support\Facades\Route;
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/
Route::get('/', function () {
return view('welcome');
});
Route::get('about', function () {
return 'Halaman ini digunakan untuk About';
});
Langkah 2 :Route yang barusan kita buat akan menangani request dengan alamat url http://127.0.0.1:8000/about. jalankan perintah diatas dengan perintah php artisan serve pada cmd andam kemudian jika berhasil akan muncul seperti gambar berikut :
Named Route
Kita juga dapat memberikan alias untuk suatu route, pemberian alias berarti kita akan memberikan nama lain ketika dipanggil pada browser. pemberian alias disebut dengan Named Route. agar lebig paham mengenai Named Route kita akan coba praktekkan pada contoh berikut :Langkah 1 :
Route::get('halaman-satu', function () {
return 'ini adalah halaman satu dengan alias satu';
})->name('satu');
Route::get('halaman-dua', function () {
return redirect()->route('satu');
});
Route untuk halaman http://127.0.0.1:8000/halaman-satu. Kita memberikan alias menjadi 'satu' (Lihat penulisan named route di atas). Kemudian Route untuk halaman http://127.0.0.1:8000/halaman-dua. didalam closure, kita berikan perintah redirect() ke halaman yang memiliki nama 'satu'.
Jadi, sebenarnya kita memberikan perintah : jika ada user membuka halaman http://127.0.0.1:8000/halaman-dua, maka dialihkan ke halaman http://127.0.0.1:8000/halaman-satu.
Langkah 2 :
silahkan jalankan jalankan perintah http://127.0.0.1:8000/halaman-dua maka akan muncul hasil sebagai berikut :
Demikian pembahasan mengenai : Mengenal Route Laravel semoga bermanfaat, jika ada yang masih belum dipahami silahkan ditanyakan di kolom komentar.
Gabung dalam percakapan