Symfony 7.2 : No route found for /lucky/number

Par bingoWRFC, il y a 1 an


Bonjour

Je débute sur Symfony et je suis la documentation officielle https://symfony.com/doc/current/setup.html pour faire l'installation sur Windows 10
J'ai installé Wamp (Apache/2.4.62 (Win64) PHP/8.3.14 ), puis Composer et Symfony CLI
symfony check:requirements est conforme
Je déploie Symfony 7.2 par

symfony mon_project --version="7.2.x" --webapp

J'ai bien la page par defaut de Symfony à l'adresse http://127.0.0.1:8000/
Pour la création de ma premiere page selon https://symfony.com/doc/current/page_creation.htmlJ

Je crée un controller

<?php // src/Controller/LuckyController.php namespace App\Controller; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Attribute\Route; class LuckyController { #route[('/lucky/number')] public function number(): Response { $number = random_int(0, 100); return new Response( '<html><body>Lucky number: '.$number.'</body></html>' ); }

Mais lorsque j'appelle la page http://127.0.0.1:8000/lucky/number j'ai le message d'erreur
No route found for "GET http://127.0.0.1:8000/lucky/number"

J'ai plusieurs fois tenté ce guide en suivant strictement les indications avec le même echec
Quelle peut-être le probléme ?

Merci

5 réponses

Alex_13, il y a 1 an

Salut, tu peux commencer par changer ton attribut 'route' en #[Route()]

<?php // src/Controller/LuckyController.php namespace App\Controller; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Attribute\Route; class LuckyController { #Route[('/lucky/number')] public function number(): Response { $number = random_int(0, 100); return new Response( '<html><body>Lucky number: '.$number.'</body></html>' ); }

De plus, tu peux spécifier un name et un path, exemple:

#Route[(path: '/lucky/number', name: 'lucky_number')]

Ce qui te permettras de pouvoir spécifier le name lorsqu'en twig tu voudras pointer vers ce chemin:

<a href="{{ path('lucky_number }}">Lucky number</a>
gillesr, il y a 1 an

Bonjour,

tu as une erreur dans l'attribut route.
Essai de l'écrire dans les crochets :

#[Route(path: 'lucky/number', name: 'lucky_number')]
bingoWRFC, il y a 1 an

Merci pour vos réponses et vos conseils
En effet les typo de syntaxe sont les principales sources d'erreur en absence de connaissance du language.
Malgré les relectures on ne les voit pas

Alex_13, il y a 1 an

Tu peux basculer le post en résolu si tout est ok pour toi :)