2012-07-10 9 views
6

Por ejemplo, enlace:de enrutamiento, un número ilimitado de parámetros

/shop/phones/brend/apple/display/retina/color/red 

donde:

phones - category alias 
brend  - name of attribute; apple - attribute value 
display - name of attribute; retina - attribute value 
color  - name of attribute; red  - attribute value 

Los atributos pueden ser cualquier número. El orden también puede ser diferente.

El inicio de la ruta es clara:

/shop/{category} 

Y qué hacer después no está claro.

En Symfony 1, un conjunto a la estrella final ("/ tienda /: categoría/*") y todo lo que no era claramente marcados, y vienen en un par de

name -> value 

Pregunta: ¿cómo describir la ruta en Symfony 2?

Respuesta

10

La ruta:

my_shop: 
    pattern: "/{path}" 
    defaults: { _controller: "MyShopBundle:Default:shop" } 
    requirements: 
    path: "^shop/.+" 

y luego usted podría analizar la ruta $ en el controlador:

class DefaultController extends Controller { 
... 
    public function shopAction($path) { 
     // $path will be 'shop/phones/brend/apple/display/retina/color/red' 
     ... 
    } 
... 
} 
Cuestiones relacionadas