3 Metode Laravel Routing Yang Sering Digunakan

2 min read

Published on 16 Jun (updated: 19 Sep)

Written by Irsyad A. Panjaitan

Fill in Laravel

Articles3 Metode Laravel Routing Yang Sering Digunakan

Routing adalah fitur yang mendasar dalam membuat aplikasi dengan menggunakan framework laravel, maka dari itu disini kita akan membahas beberapa fitur yang bisa Anda lakukan ketika ingin membuat route.


Route Resource & Api Resource

Route ini biasa digunakan untuk membuat yang namanya CRUD (Create, Read, Update, Destroy). Jadi dari pada kita definisikan route satu persatu, lebih baik kita group dia kedalam resource.

Ketika kita menggunakan resource, maka dia akan otomatis menggenerasi 7 url dan method pada controller yang Anda tuju.

Dalam contoh ini, kita akan membuat controller untuk Post.

Route::resource('posts', PostController::class);
phpCopy

Kemudian, jika Anda list route nya spesipik pada posts tersebut, maka harusnya Anda akan melihat ini.

artisan route:list --name=posts ... GET|HEAD posts ... posts.index › [email protected] POST posts ... posts.store › [email protected] GET|HEAD posts/create ... posts.create › [email protected] GET|HEAD posts/{post} ... posts.show › [email protected] PUT|PATCH posts/{post} ... posts.update › [email protected] DELETE posts/{post} ... posts.destroy › [email protected] GET|HEAD posts/{post}/edit ... posts.edit › [email protected]
bashCopy

Nah, kemudian, jika Anda ingin membuat controller nya, sudah pasti mudah dengan cara memberi flag --model=[] seperti artisan make:controller PostController --model=Post.

Baik, sekarang kita bahas Api Resource, sebenarnya ini tidak akan jauh beda, jika kita buat Route::apiResource() maka dia akan menggenerasi 5 metode saja, tanpa create dan edit.

Route::apiResource('posts', PostController::class);
phpCopy

Kemudian, jika kita ingin generasi controllernya, jangan lupa tambahkan flag api juga seperti artisan make:controller PostController --model=Post --api.

Route Group

Untuk teknik ini, mungkin kalian sudah sering memakainya, karena juga biasa digunakan untuk menggroup route yang misalnya itu didalam middleware, namespace, controller, name, namespace, dll.

Route::middleware('auth')->group(function () { Route::get('dashboard', DashboardController::class); Route::get('account/edit', [ProfileInformationController::class, 'edit']); Route::put('account/edit', [ProfileInformationController::class, 'update']); ... }); Route::middleware('guest')->group(function () { Route::get('login', LoginController::class); Route::get('register', RegisterController::class); ... });
phpCopy

Route Controller

Jika Anda pernah membuat route yang berulang-ulang dengan controller yang sama, maka sekarang Anda bisa group mereka dengan cara mengkelompokkan nya dengan controller.

# Before Route::get('account/edit', [AccountController::class, 'edit']); Route::put('account/edit', [AccountController::class, 'update']); Route::get('password/edit', [AccountController::class, 'editPassword']); Route::put('password', [AccountController::class, 'updatePassword']); # After Route::controller(AccountController::class)->group(function () { Route::get('account/edit', 'edit'); Route::put('account/edit', 'update'); Route::get('password/edit', 'editPassword'); Route::put('password', 'updatePassword'); });
phpCopy

Nah, itu saja dulu untuk artikel ini, semoga ini dapat bermanfaat ya.

Irsyad A. Panjaitan

Let's start living like no one can help us in any event, so that when we are helped in certain times, it becomes a plus in itself.
0

Share on