Routes memiliki folder tersendiri dan terdiri dari 4 file: api, channels, console & web. Mari kita mulai dengan melihat web routes. File web.php dapat anda temukan pada daengweb/routes/web.php seperti yang terlihat pada gambar berikut
Default route anda akan menemukan syntax berikut :
Route::get('/', function () {
return view('welcome');
});
Apa yang kita temukan diatas merupakan method dari Route class, yang terdiri dari 2 parameter. Parameter pertama berisi uri segment ‘/’, yang menunjukkan kecocokan pada root domain, dalam artian localhost/daengweb.id/public atau jika menggunakan php artisan server berarti : localhost:8000 . Parameter kedua adalah sebuah closure, dimana berisi anonymous function yang dapat segera di eksekusi. Pada kasus kali ini, function tersebut akan me-return welcome view dengan menggunakan method view dan menunjukkan view yang kita inginkan.
view('welcome');
Perintah diatas akan menampilkan welcome view yang dapat kita lihat ketika mengetikkan localhost/daengweb.id/public atau localhost:8000 pada browser. Sebagai pengganti controller, kita dapat menggunakan closure untuk me-return view.
Selanjutnya mari kita lihat potongan code dari view. Pada folder resources → views seperti yang terlihat dibawah ini, buka file welcome.blade.php
<!DOCTYPE html>
<html lang="{{ config('app.locale') }}">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Laravel</title>
<!-- Fonts -->
<link href="https://fonts.googleapis.com/css?family=Raleway:100,600" rel="stylesheet" type="text/css">
<!-- Styles -->
<style>
html, body {
background-color: #fff;
color: #636b6f;
font-family: 'Raleway', sans-serif;
font-weight: 100;
height: 100vh;
margin: 0;
}
.full-height {
height: 100vh;
}
.flex-center {
align-items: center;
display: flex;
justify-content: center;
}
.position-ref {
position: relative;
}
.top-right {
position: absolute;
right: 10px;
top: 18px;
}
.content {
text-align: center;
}
.title {
font-size: 84px;
}
.links > a {
color: #636b6f;
padding: 0 25px;
font-size: 12px;
font-weight: 600;
letter-spacing: .1rem;
text-decoration: none;
text-transform: uppercase;
}
.m-b-md {
margin-bottom: 30px;
}
</style>
</head>
<body>
<div class="flex-center position-ref full-height">
@if (Route::has('login'))
<div class="top-right links">
@if (Auth::check())
<a href="{{ url('/home') }}">Home</a>
@else
<a href="{{ url('/login') }}">Login</a>
<a href="{{ url('/register') }}">Register</a>
@endif
</div>
@endif
<div class="content">
<div class="title m-b-md">
Laravel
</div>
<div class="links">
<a href="https://laravel.com/docs">Documentation</a>
<a href="https://laracasts.com">Laracasts</a>
<a href="https://laravel-news.com">News</a>
<a href="https://forge.laravel.com">Forge</a>
<a href="https://github.com/laravel/laravel">GitHub</a>
</div>
</div>
</div>
</body>
</html>
Sederhana bukan cara kerja dari route ? Point yang ingin saya sampaikan adalah bawah route mengatur url dari sebuah aplikasi yang kita buat. Contoh lain :
Route::get(‘/coba’, function() {
return view(‘welcome’);
});
potongan code diatas akan membentuk url /coba atau lebih lengkapnya dalam hal ini : localhost/daengweb.id/public/coba atau jika menggunakan php artisan server maka akan menjadi seperti ini : localhost:8000/coba .
Route class sendiri menyediakan beberapa opsi yang bisa digunakan untuk membuat varian method, diantaranya :
Route::get
Route::post
Route::put
Route::patch
Route::delete
Tergantung method apa yang anda butuhkan. Sampai disini pengenalan routes, semoga bermanfaat.
Comments