Laravel 8 Routing Tutorial Example

May 10, 2021 . Admin

Hi Dev,

In This Blog, I will explain you step by step laravel 8 routing tutorial. I will learn how to create new route in laravel 8. you can easily create post route in laravel 8 application. i will also show how to create route in laravel 8 controller.

We will step by step process of how to create first route in laravel and understanding of laravel routing with brief.

What is Laravel Routing?

Using Routing you can create a request URL for your application. you can design set of HTTP request like POST Request, GET Request, PUT Request and DELETE Request using routing in laravel 8.

You can easily create route in web.php file inside a routes folder. in web.php file you can create your route list there are several ways. i will show you bellow step by step how you can create it and how it works, so let's see step by step explanation.

Create Simple Route:

Now, I will create very simple route and will let you know how you can access it. so let's create simple route using following line adding in route file:

routes/web.php
Route::get('basic_route', function () {
    return 'This is Simple Route Example of MyWebtuts.com';
});
Access URL:
http://localhost:8000/basic_route
Route with Call View File:

You can create route with directly call view blade file from route directly. You can see bellow created route example:

you may use the Route::view method. Like the redirect method, this method provides a simple shortcut so that you do not have to define a full route or controller. The view method accepts a URI as its first argument and a view name as its second argument. In addition, you may provide an array of data to pass to the view as an optional third argument:

routes/web.php
Route::view('/product', 'index');

Route::view('/product', 'index', ['name' => 'MyWebtuts']);
resources/views/index.php

This is basic Route with Call View File Example of MyWebtuts.com

Access URL:
http://localhost:8000/product
Route with Controller Method:

Now, you can create route with call controller method so, you can simply create controller method and call that method with your route as like bellow:

routes/web.php
use App\Http\Controllers\ProductController;
// ProductController
Route::get('/product', [ProductController::class, 'index']);
app/Http/Controllers/ProductController.php
<?php
  
namespace App\Http\Controllers;
  
class ProductController extends Controller
{
  
    /**
     * Show the application dashboard.
     *
     * @return \Illuminate\Contracts\Support\Renderable
     */
    public function index()
    {
        return view('index');
    }
}
resources/views/index.php

his is Simple Route with Controller Method Example of MyWebtuts.com

Access URL:
http://localhost:8000/product
Create Route with Parameter:

Here, we will create simple route with passing parameters. you can can create dynamic route with your controller. so let's create as bellow

routes/web.php
use App\Http\Controllers\ProductController;
// ProductController
Route::get('/product/{id}', [ProductController::class, 'show']);
app/Http/Controllers/ProductController.php
<?php
  
namespace App\Http\Controllers;
  
class ProductController extends Controller
{
  
    /**
     * Show the application dashboard.
     *
     * @return \Illuminate\Contracts\Support\Renderable
     */
    public function show($id)
    {
        return 'Product ID:'. $id;
    }
}
Access URL:
http://localhost:8000/product/7
Create Route Methods:

You can create get, post, delete, put, patch methods route as bellow i created. you can understand how it works.

So, let's see bellow route examples:

use App\Http\Controllers\ProductController;
// ProductController
Route::get('product/create', [ProductController::class ,"create"])->name("product.create");
Route::post('product/store', [ProductController::class ,"store"])->name("product.store");
Route::get('product/edit/{id}', [ProductController::class ,"edit"])-> name("product.edit");
Route::put('product/update/{id}', [ProductController::class ,"update"])-> name("product.update");
Route::delete('product/delete/{id}', '[ProductController::class, 'delete'])-> name("product.delete");

You can also check how many routes i created using following command:

php artisan route:list
Output

I Hope It will help you..

#Laravel 8 #Laravel