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

Blade Template Tutorial Three Template Inheritance in Laravel 11