andriajah Wed Jul 2024 2 months ago

Contoh Mengkonfigurasi RouteServiceProvider di Laravel 11

Laravel 11: Konfigurasi RouteServiceProvider (Sudah Tidak Ada Lagi)

Pada versi Laravel sebelum 11, konfigurasi route dihandle di dalam file RouteServiceProvider.php yang khusus. Tapi, pendekatan ini berubah di Laravel 11. Berikut yang perlu Anda ketahui:

Apa yang Terjadi Pada RouteServiceProvider.php?

Laravel 11 menyederhanakan proses konfigurasi routing. File RouteServiceProvider.php dihapus, dan definisi route sekarang dihandle secara langsung di dalam file route yang terpisah.

Cara Mengkonfigurasi Route di Laravel 11

Secara default, Laravel mencari definisi route di dua lokasi spesifik:

  • Route Web: Didefinisikan di routes/web.php
  • Route Console: Didefinisikan di routes/console.php

Mengkonfigurasi Route di app.php

File bootstrap/app.php memainkan peran penting dalam konfigurasi route. Berikut bagian yang relevan:

use Illuminate\Foundation\Application;

return Application::configure(basePath: dirname(__DIR__))
    ->withRouting(
        web: __DIR__.'/../routes/web.php',
        commands: __DIR__.'/../routes/console.php',
        channels: __DIR__.'/../routes/channels.php',
        health: '/up',
        then: function () {
            Route::middleware('web')
                ->prefix('admin')
                ->group(base_path('routes/admin.php'));
        }
    );
 

Kode ini menginstruksikan Laravel untuk mencari route web di routes/web.php dan route console di routes/console.php.

Mendefinisikan Route di File Terpisah

Berikut contoh dasar mendefinisikan route di routes/admin.php:

<?php

Route::get('/', function () {
    return view('welcome');
});

Route::get('/about', function () {
    return 'This is the about page';
});

Poin-poin Penting:

  • Laravel 11 memisahkan konfigurasi route dari RouteServiceProvider.
  • Route web dan console didefinisikan di file terpisah (routes/web.php dan routes/console.php).
  • File bootstrap/app.php menentukan lokasi file route.

Pertimbangan Tambahan:

  • Anda dapat membuat file route tambahan untuk area spesifik di aplikasi Anda dengan meletakkannya di dalam direktori routes.
  • Gunakan route prefix dan namespace untuk mengorganisir route Anda secara efektif.

Untuk informasi lebih lengkap tentang routing Laravel di versi 11, silakan merujuk ke dokumentasi resmi: https://laravel.com/docs/11.x/routing

Catatan:

Artikel ini menjelaskan bahwa RouteServiceProvider sudah tidak ada lagi di Laravel 11. Konfigurasi route sekarang dihandle di file route terpisah dan di bootstrap/app.php.

Apakah Anda ingin saya jelaskan lebih detail tentang cara mendefinisikan route di Laravel 11, atau ingin membahas topik lain terkait Laravel 11?

laravel laravel 11