Laravel Résumé
Models Migration Relation
Introduction Installation Projet:Structure Strucutre,model,migration Migration,Models,Relation Artisan CLI
Les Relations
BelongsTo HasOne HasMany BelongsToMany HasManyThrough
Exemples des Relations
Relations:oneToMany,ManyToMany... Relations:Exemples
Exercices
Exercice 1 Exercice 2
Controllers Views Routes
Routes,Controller,Model,view
Les Routes
Définir:Routes Routes avec Paramètres Routes nommées Groupes de routes
Les Controllers
Les Controllers Les Contrôleurs de Ressources
Les Vues
Vues et Blade Templates Blade Layouts et Sections Sous-vues Composants et Slots Contrôles de flux
MVC :CRUD
CRUD: Produit CRUD: Etudiant CRUD: Car CRUD,Recherche: Book
Validation
Exemple :Projets
ORM:Eloquent
Exemple :Transport
Api:Laravel +React
Middleware

Seeders & Factories
Exemples :EFM

Authenfication
Queue,job,task
TP:Schools Management
Authenfication:React
Layouts
Exercices





Laravel: Groupes de routes

Laravel: Groupes de routes

Les groupes de routes sont une fonctionnalité puissante de Laravel qui permet de regrouper des routes sous un même préfixe ou middleware. Cela simplifie la gestion des routes dans les applications web complexes. Ce guide détaillé vous expliquera comment utiliser les groupes de routes dans Laravel avec des exemples pratiques.

Groupes de Routes avec Préfixe

Les groupes de routes avec préfixe sont utiles lorsque vous souhaitez préfixer plusieurs URLs avec un chemin commun. Cela peut être particulièrement pratique pour regrouper des routes liées à une certaine fonctionnalité ou à un certain domaine de votre application.

Exemple 1: Groupes de Routes avec Préfixe

// routes/web.php
use Illuminate\Support\Facades\Route;

Route::prefix('admin')->group(function () {
    Route::get('/utilisateurs', function () {
        // Logique pour afficher les utilisateurs
    });

    Route::get('/articles', function () {
        // Logique pour afficher les articles
    });
});

Dans cet exemple, toutes les routes à l'intérieur du groupe ont le préfixe /admin, ce qui signifie que les URLs correspondantes commenceront par /admin.

Exemple 2: Groupes de Routes avec Préfixe et Middleware

// routes/web.php
use Illuminate\Support\Facades\Route;

Route::prefix('admin')->middleware('auth')->group(function () {
    Route::get('/tableau-de-bord', function () {
        // Tableau de bord pour les utilisateurs authentifiés
    });

    Route::get('/utilisateurs', function () {
        // Liste des utilisateurs pour les administrateurs authentifiés
    });
});

Dans cet exemple, toutes les routes du groupe ont le préfixe /admin et appliquent également le middleware auth. Cela signifie que seuls les utilisateurs authentifiés peuvent accéder à ces routes.

Groupes de Routes avec Middleware

Les groupes de routes avec middleware sont utiles lorsque vous souhaitez appliquer un middleware à plusieurs routes à la fois. Cela vous permet de centraliser la logique de middleware et de l'appliquer de manière cohérente dans votre application.

Exemple 1: Groupes de Routes avec Middleware

// routes/web.php
use Illuminate\Support\Facades\Route;

Route::middleware(['auth'])->group(function () {
    Route::get('/profil', function () {
        // Logique pour afficher le profil de l'utilisateur
    });

    Route::get('/parametres', function () {
        // Logique pour afficher les paramètres de l'utilisateur
    });
});

Dans cet exemple, toutes les routes à l'intérieur du groupe appliquent le middleware auth, ce qui signifie que seuls les utilisateurs authentifiés peuvent y accéder.

Exemple 2: Groupes de Routes avec Middleware Spécifique

// routes/web.php
use Illuminate\Support\Facades\Route;

Route::middleware(['auth', 'admin'])->group(function () {
    Route::get('/admin', function () {
        // Tableau de bord administrateur
    });

    Route::get('/admin/utilisateurs', function () {
        // Liste des utilisateurs pour les administrateurs
    });
});

Dans cet exemple, toutes les routes du groupe appliquent à la fois les middlewares auth et admin, ce qui signifie que seuls les administrateurs authentifiés peuvent y accéder.

Conclusion

Les groupes de routes sont un outil puissant pour organiser et gérer les routes dans une application Laravel. Ils permettent de regrouper des routes sous un même préfixe ou middleware, ce qui simplifie la gestion et la maintenance du code. En suivant ce guide, vous devriez maintenant être en mesure d'utiliser les groupes de routes dans vos projets Laravel.

Pour plus de détails, consultez la documentation officielle de Laravel sur les groupes de routes.