Outils pour utilisateurs

Outils du site


symfony_4:fonctionnement:les_routes_acces_aux_methodes

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
symfony_4:fonctionnement:les_routes_acces_aux_methodes [2018/10/18 15:08]
julien.guerin supprimée
symfony_4:fonctionnement:les_routes_acces_aux_methodes [2019/12/08 08:41] (Version actuelle)
Ligne 1: Ligne 1:
-====== L'entête de méthode ======+====== Les routes ======
  
-Les routes sont les moyens permettant de lancer les différentes méthodes des différents contrôleurs.+La route est à mettre dans l'[[symfony_4:general:l_entete_de_methode|entête de la méthode]].
  
-Dans Synfony4, nous utiliserons les annotations pour les paramétrer.+Les routes sont capturés à partir du contrôleur /public/index.php/
  
-Ainsi, l'entête des méthodes permettra de +----
-  * Connaitre les spécifications techniques des méthodes,  +
-  * Consulter les droits d'accès à la méthode en fonctions des utilisateurs, +
-  * Consulter la route permettant d'accéder à la méthode.+
  
-Un entête sera donc de la forme :+=== Fonctionnement === 
 + 
 +Ainsi pour la route suivante : 
 +<code>/login</code> 
 + 
 +Dans le cadre d'un server web autre que celui de symfony, on n'utilisera pas l'URL : 
 +<code> localhost/public/login </code> 
 +mais 
 +<code> localhost/public/index.php/login </code> 
 + 
 +**Remarque :** Attention, tous les noms des routes doivent être uniques. 
 + 
 +---- 
 + 
 +=== Conventions === 
 + 
 +La convention de nommage, en accord avec la charte de codage, est  : 
 + 
 +  * Le nom du fichier aura le même nom que la methode  
 +  * **Exemple :** Si le nom du controller est "Blog" et la méthode est "list", la route sera "localhost/blog/list" 
 + 
 +---- 
 + 
 +=== Exemples === 
 + 
 +<code PHP> 
 +class SWFileController extends Controller 
 +
 +    /** 
 +     * Display SWFile tab 
 +     *  
 +     * @Route("/SWFile/", name="swfile"
 +     *  
 +     * @IsGranted("ROLE_ADMIN", statusCode=404, message="Accès Refusé !") 
 +     *  
 +     * @param Request $request 
 +     * @return \Symfony\Component\HttpFoundation\RedirectResponse|Response 
 +     */ 
 +    public function index(Request $request) 
 +    { 
 +        ... 
 +    } 
 + 
 +    /** 
 +     * Add a SWFile 
 +     *  
 +     * @Route("/SWFile/add", name="swfile_add"
 +     *  
 +     * @IsGranted("ROLE_ADMIN", statusCode=404, message="Accès Refusé !") 
 +     *  
 +     * @param Request $request 
 +     * @return \Symfony\Component\HttpFoundation\RedirectResponse|Response 
 +     */ 
 +    public function add( Request $request ) 
 +    { 
 +         ... 
 +    } 
 +     
 +    /** 
 +     * Edit a SWFile 
 +     * 
 +     * @Route("/SWFile/edit/{sw}", name="swfile_edit", requirements={"sw"="\d+"}) 
 +     * 
 +     * @IsGranted("ROLE_ADMIN", statusCode=404, message="Accès Refusé !") 
 +     * 
 +     * @param Request $request 
 +     * @param SWFile $SWFile 
 +     * @return \Symfony\Component\HttpFoundation\RedirectResponse|Response 
 +     */ 
 +    public function edit(Request $request, SWFile $SWFile) 
 +    { 
 +        ... 
 +    } 
 + 
 +    /** 
 +     * Delete a SWFile (not the file, just the database slot 
 +     *  
 +     * @Route("/SWFile/delete/{sw}", name="swfile_delete", requirements={"sw"="\d+"}) 
 +     *  
 +     * @IsGranted("ROLE_ADMIN", statusCode=404, message="Accès Refusé !") 
 +     *  
 +     * @param Request $request 
 +     * @param SWFile $SWFile 
 +     * @return \Symfony\Component\HttpFoundation\RedirectResponse|Response 
 +     */ 
 +    public function delete(Request $request, SWFile $SWFile) 
 +    { 
 +        ... 
 +    } 
 +</code>
symfony_4/fonctionnement/les_routes_acces_aux_methodes.1539868138.txt.gz · Dernière modification: 2019/12/08 08:43 (modification externe)