Etape 6 Le routage

On peut définir au sein d’un module ses propres règles de routage, cela permet ainsi de faciliter la vie à partir d’Helpers qui vont générer les bonnes urls pour nous. De plus, il est possible d’utiliser des alias qui vont encore simplifier les choses en préconisant une url humainement plus lisible et plus naturelle. Ce qui aura pour incidence de faciliter l’indexation des moteurs de recherches et donc une meilleure approche SEO.

Elles vont également nous faciliter les choses pour définir les urls des menus.

Par convention, il faut ajouter une classe Routes qui implémente l’interface INavigationProvider à la racine de notre module, comme ci-dessous :

La mécanique est relativement simple, cela permet de spécifier l’url d’écoute, les paramètres associés comme l’area, le controller, l’action, et les éventuels paramètres. Je n’entrerai pas davantage dans les détails car ce sont des choses ici classiques lorsque l’on connait l’architecture MVC.

Toute fois pour le routage, il existe une subtilité dont je ne vais pas traiter ici car elle le sera dans l’étape 10 : Ajustement entre model et vue. On peut y définir sur cette étape des éléments personnalisés au sein même du routage en précisant que la route est voué à un affichage front ou backoffice par exemple, mais également si c’est une étape d’ajout de donnée, suppression, etc.

De plus, par-dessus ce système de routage il existe la notion d’Alias. C'est-à-dire qu’on peut forcer un préfixe d’url particulière vers une route qui aura été préalablement défini par le système de routage que je viens de décrire ci-dessus.


Rejoindre la conversation