Gestion des Routes dans CodeIgniter
<?php
use CodeIgniter\Router\RouteCollection;
/**
* @var RouteCollection $routes
*/
$routes->get('/', 'Home::index');
// route devis
$routes->get('devis', 'DevisController::index');
$routes->get('devis/create', 'DevisController::create');
$routes->get('devis/view/(:num)', 'DevisController::view/$1');
$routes->get('devis/edit/(:num)', 'DevisController::edit/$1');
$routes->post('devis/store', 'DevisController::store');
$routes->post('devis/update/(:segment)', 'DevisController::update/$1');
$routes->get('devis/delete/(:segment)', 'DevisController::delete/$1');
$routes->get('devis/compose', 'DevisController::compose');
$routes->post('devis/save', 'DevisController::save');
// Routes items
$routes->get('items', 'ItemController::index');
$routes->get('items/create', 'ItemController::create');
$routes->post('items/store', 'ItemController::store');
$routes->get('items/edit/(:num)', 'ItemController::edit/$1');
$routes->post('items/update/(:segment)', 'ItemController::update/$1');
$routes->get('items/delete/(:segment)', 'ItemController::delete/$1');
Gestion des Routes dans CodeIgniter
Bienvenue dans ce cours sur la gestion des routes dans CodeIgniter. Les routes sont un élément crucial de toute application web MVC, car elles déterminent comment les requêtes HTTP sont dirigées vers les contrôleurs. Dans CodeIgniter, les routes sont définies dans le fichier app/Config/Routes.php.
Introduction aux Routes
-
Qu'est-ce qu'une Route ?
- Une route est une règle qui associe une URL à un contrôleur et une méthode spécifique dans votre application.
-
Pourquoi Utiliser des Routes ?
- Pour organiser l'accès aux différentes parties de votre application.
- Pour améliorer la lisibilité et la structure de l'URL.
- Pour contrôler et sécuriser l'accès aux fonctionnalités de l'application.
Structure de Base d'une Route
$routes->get('path', 'Controller::method');
get: Le type de requête HTTP (GET, POST, etc.).'path': Le chemin dans l'URL.'Controller::method': Le contrôleur et la méthode à appeler.
Exemples de Routes
-
Route de Base
php$routes->get('/', 'Home::index');- Cette route dirige les requêtes vers la méthode
indexdu contrôleurHomelorsque l'utilisateur accède à la racine du site.
- Cette route dirige les requêtes vers la méthode
-
Routes pour un Module de Gestion de Devis
php$routes->get('devis', 'DevisController::index'); $routes->get('devis/create', 'DevisController::create');- Ces routes permettent d'accéder aux différentes fonctionnalités du module de gestion de devis.
-
Routes avec Paramètres
php$routes->get('devis/view/(:num)', 'DevisController::view/$1');(:num)est un placeholder pour un paramètre numérique.$1fait référence au premier paramètre capturé dans l'URL.
Création de Routes Dynamiques
- Vous pouvez créer des routes qui capturent des segments d'URL et les passent comme paramètres aux méthodes de contrôleur.
Bonnes Pratiques
-
Nommer Clairement les Routes
- Utilisez des noms qui reflètent clairement la fonctionnalité ou la page.
-
Sécuriser les Routes
- Utilisez le type de requête approprié (GET pour afficher, POST pour soumettre des données).
-
Organiser les Routes
- Regroupez les routes par fonctionnalité ou module.
Exercices Pratiques
-
Créer un Nouveau Module
- Définissez des routes pour un nouveau module dans votre application, par exemple, un module
Utilisateur.
- Définissez des routes pour un nouveau module dans votre application, par exemple, un module
-
Tester les Routes
- Créez des contrôleurs et des méthodes fictifs pour tester vos routes.
-
Gestion des Erreurs
- Configurez une route pour gérer les erreurs 404 personnalisées.
En suivant ce cours, vous devriez être en mesure de comprendre et d'implémenter efficacement des routes dans vos applications CodeIgniter, améliorant ainsi la structure et la sécurité de votre application.