Le 16/08/2016

Mes prefix de routes ne marchent pas sous Symfony3

OK alors je note mon probleme parce que je pense que d'autres débutants en Symfony3 vont avoir le soucis avec les routes également. En fait lorsqu'on a une déclaration de route pour rajouter un prefix (genre /toto/ pour le front et /toto/admin/ pour le backoffice) il faut faire attention à l'ordre d'ajout dans le routing.yml. En effet, on mettra dabord la route la moins spécifique puis ensuite la route la plus spécifique ( / = moins spécifique, /arg1/arg2/arg3/etc... = plus spécifique). Donc dans le routing.yml, on ne déclarera pas les modules dans ce sens :


admin_monmodule:
    resource: "@MonmoduleBundle/Controller/Admin"
    type:     annotation
    prefix:  /admin/{_locale}/
    requirements:
        _locale: "%locale_choices%"
    defaults:
        _locale: "%default_locales%"

frontend_monmodule:
    resource: "@MonmoduleBundle/Controller"
    type:     annotation
    prefix:  /{_locale}/
    requirements:
      _locale: "%locale_choices%"
    defaults:
       _locale: "%default_locales%"

mais on le fera plutôt comme ceci :


frontend_monmodule:
    resource: "@MonmoduleBundle/Controller"
    type:     annotation
    prefix:  /{_locale}/
    requirements:
      _locale: "%locale_choices%"
    defaults:
       _locale: "%default_locales%"

admin_monmodule:
    resource: "@MonmoduleBundle/Controller/Admin"
    type:     annotation
    prefix:  /admin/{_locale}/
    requirements:
        _locale: "%locale_choices%"
    defaults:
        _locale: "%default_locales%"

j’espère que ça aidera aussi d'autres personnes.
Commentaires sur cet article
Pas encore de commentaires pour cet article. Soyez le premier !

Vous devez être connecté pour commenter un article.