Routing

Setelah project yang barusan kita buat sudah dapat diakses, sebelum lanjut kita pelajari dulu pengetahuan dasar dari laravel yaitu routing. Lebih lengkapnya bisa dibaca di dokumentasinya (https://laravel.com/docs/5.8/routing)

Untuk mengatur routing, silahkan buka file web.php di folder routes. Sekarang silahkan coba tambahkan baris baru dan ketik route seperti berikut.

Route::get('/halo', function() {
    return "Halo nama saya fadlur";
});

Sekarang kita jalankan dengan perintah php artisan serve dan akses dengan alamat http://localhost:8000/halo, maka akan tampil seperti berikut.

Kemudian kita akan mencoba membuat route menggunakan file controller. Buat 1 buah controller dengan perintah

php artisan make:controller LatihanController

Buka dan edit file LatihanController.php menjadi seperti di bawah ini.

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class LatihanController extends Controller
{
    public function index() {
        return "oke, ini dari controller";
    }
}

Dan file web.php tambahkan 1 buah route lagi menjadi seperti berikut.

<?php

/*
|--------------------------------------------------------------------------
| 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('/halo', function() {
    return "Halo nama saya fadlur";
});

Route::get('/latihan', '[email protected]');

Jalankan kembali dan akses dengan alamat http://localhost:8000/latihan

maka di browser akan tampil tulisan.

oke, ini dari controller

# Route Parameters

Kadang kala kita butuh mengambil "id" atau "judul" dari alamat yang kita ketik. Semisal http://localhost:8000/blog/2, dan kita butuh mengambil angka 2 ke function kita. Maka route parameter adalah solusinya.

Di file web.php kita tambahkan route

Route::get('/blog/{id}', '[email protected]');

Dan di file LatihanController kita tambahkan 1 buah function di bawah function index.

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class LatihanController extends Controller
{
    public function index() {
        return "oke, ini dari controller";
    }

    public function blog($id) {
        return "Ini blog dengan id ".$id;
    }
}

Kalau parameter lebih dari 1, sebagai contoh kita akan mengambil data komentar berdasarkan id blog dan id komentarnya.

Kita tambahkan 1 baris route lagi di file web.php nya

Route::get('/blog/{idblog}/komentar/{idkomentar}', '[email protected]');

Dan LatihanController.php kita tambahkan 1 buah lagi function sehingga menjadi

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class LatihanController extends Controller
{
    public function index() {
        return "oke, ini dari controller";
    }

    public function blog($id) {
        return "Ini blog dengan id ".$id;
    }

    public function komentar($idblog, $idkomentar) {
        echo 'Id blognya : '.$idblog;
        echo '<br />';
        echo 'Id komentarnya : '.$idkomentar;
    }
}

Dan ketika diakses dengan alamat http://localhost:8000/blog/123/komentar/345, hasilnya adalah

Id blognya : 123
Id komentarnya : 345

Itu tadi adalah sekilas tentang route di laravel. Selanjutnya kita akan membahas tentang template bawaan dari laravel,yaitu blade template.

 

Mau Bikin Aplikasi Web & Aplikasi Android?

Saya membuka jasa pembuatan aplikasi web dan android untuk aplikasi seperti toko online, monitoring (IoT), interface mesin absensi atau kasir

Silahkan kontak link di bawah ini untuk teknis dan harganya