Controller Tutorial in Laravel 11

 <?php


use Illuminate\Support\Facades\Route;
use App\Http\Controllers\PageController;
use App\Http\Controllers\TestingController;

Route::get('/', function () {
    return view('welcome');
})->name("home");

Route::get("/userpage/{id}", [PageController::class, "showUser"])->name("userhere");
Route::get("/blogpage", [PageController::class, "showBlog"])->name("bloghere");
Route::get("/homepage", [PageController::class, "showHome"])->name("homehere");

// If we want to group of Controller as shown below :
Route::controller(PageController::class)->group(function(){
    Route::get("/userpage/{id}", "showUser")->name("userhere");
    Route::get("/blogpage", "showBlog")->name("bloghere");
    Route::get("/homepage", "showHome")->name("homehere");
});


Route::get("/testingpage", TestingController::class);
Above File is routes/web.php File





Below File is App\Http\Controllers\PageController File
<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class PageController extends Controller
{
    public function showHome()
    {
        return view("home");
    }
    public function showUser(string $id)
    {
        return view("userTwo", ["idpresent" => $id]);
    }
    public function showBlog()
    {
        return view("blog");
    }
}





Below File is App\Http\Controllers\TestingController.php File
<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class TestingController extends Controller
{
    /**
     * Handle the incoming request.
     */
    public function __invoke()
    {
        return view("testing");
    }
}



Comments

Popular posts from this blog

Eloquent Many to Many Relationship Tutorial in Laravel 11

Eloquent with JSON Data Columns Tutorial in Laravel 11

Blade Template Tutorial Three Template Inheritance in Laravel 11