Annotation et paramètres par défaut pour les routes sf2

Si l’on souhaite passer la page courante dans une route sf2, en utilisant les annotations, pour obtenir à une structure comme ceci  :

/news/ (page = 1)
/news/2 (page = 2)

On peut utiliser l’option defaults de @Route en affectant 2 routes à son contrôleur :

    /**
     *
     * @Route("/news",  name="news_list", defaults={"page" = 1})
     * @Route("/news/{page}", name="news_list_page", requirements={"page" = "\d+"})
     * @Template()
     */
    public function indexAction($page)
    {
       return array()
    }

3 réflexions au sujet de « Annotation et paramètres par défaut pour les routes sf2 »

  1. On peut raccourcir le tout en mettant:

    /**
    *
    * @Route(« /news/{page} », name= »news_list », defaults={« page » = 1}, , requirements={« page » = « \d+ »})
    * @Template()
    */
    public function indexAction($page)
    {
    return array()
    }

    Du coup ça évite de définir deux routes différentes, et on garde le même comportement.

Répondre à Maxime Annuler la réponse.

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>