Guide

Routing

Routes nommées, paramètres et localisation uniquement là où la stratégie d’URL en a réellement besoin.

Commencer par des routes nommées simples

Utilisez d’abord getNamed(), postNamed() et les méthodes similaires dans app/Config/Routing.php. C’est le point de départ le plus lisible pour un nouveau projet et il correspond au skeleton.

example.php
<?php

use App\Controllers\ArticleController;
use Lemonade\Framework\Routing\Router;

return static function (Router $router): void {
    $router->getNamed(
        'articles.detail',
        '/articles/{id}',
        ArticleController::class . '@detail',
    );
};

Paramètres de route et génération d’URL

Les paramètres de route sont transmis aux arguments de l’action par leur nom. Générez les URL avec UrlGenerator ou les helpers de view plutôt que de construire les chemins à la main.

example.php
$url = $this->url()->route('articles.detail', [
    'id' => 123,
    'preview' => 1,
]);

La localisation des routes est facultative

Utilisez localizedGroup() uniquement lorsque l’application a réellement besoin d’URL dépendantes de la langue. Cela n’a pas à faire partie du premier exemple de chaque projet. Une fois le routing de base compris, passez à Middleware pour les règles communes des requests et à Formulaires et workflow POST pour les formulaires qui modifient l’état.

example.php
$router->localizedGroup(static function (Router $router): void {
    $router->getNamed('home.index', '/', 'HomeController@index');
});