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.phpRoute::get('basic_route', function () { return 'This is Simple Route Example of MyWebtuts.com'; });Access URL:
http://localhost:8000/basic_routeRoute 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.phpRoute::view('/product', 'index'); Route::view('/product', 'index', ['name' => 'MyWebtuts']);resources/views/index.php
Access URL:This is basic Route with Call View File Example of MyWebtuts.com
http://localhost:8000/productRoute 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.phpuse 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
Access URL:his is Simple Route with Controller Method Example of MyWebtuts.com
http://localhost:8000/productCreate 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.phpuse 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/7Create 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:listOutput
I Hope It will help you..