~ We are changing the world with technology. ~

Matt Mullenweg

Mengenal Routes Pada Laravel 5.4

Mengenal Routes Pada Laravel 5.4

2947 Dilihat

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.

Full Stack Developer & Remote Worker salah satu perusahaan asal Australia. Senang dengan teknologi baru. Laravel addict yang tidak fanatik. Merekam jejak dengan menulis

Laravel Multiple Database MySql & MongoDB Laravel

Laravel Multiple Database MySql & MongoD...

Mengelola lebih dari satu database di Laravel akan menjadi bahan pembahasan kita dimana engine database yang akan digunakan adalah MySQL dan MongoDB, persoalannya adalah bagaimana menggunakan kedua da...

Mengenal & Mengimplementasikan Laravel Airlock Laravel

Mengenal & Mengimplementasikan Laravel A...

Salah satu fitur yang menarik perhatian dari Laravel 7 adalah Airlock. Fitur ini melengkapi sederet fitur lainnya yang serupa dalam menciptakan fungsi authentication, sebut saja yang lebih dahulu dike...

Authorization Using Gates Laravel 7 Laravel

Authorization Using Gates Laravel 7

Membedakan antara authentication dan authorization sering kali menjadi sebuah masalah baru karena keduanya hampir dianggap sama tapi memiliki fungsi yang berbeda, dimana authentication biasanya diguna...

Komentar